{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "圆环图本质上是一个中间切出一块区域的饼状图。可以使用python和matplotlib库来实现。本文主要介绍基于matplotlib实现圆环图。本文所有代码见：[Python-Study-Notes](https://github.com/luohenyueji/Python-Study-Notes/tree/master/Plot%20Items)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "# 去掉警告\r\n",
    "import warnings\r\n",
    "warnings.filterwarnings(\"ignore\")\r\n",
    "# 多行输出\r\n",
    "from IPython.core.interactiveshell import InteractiveShell\r\n",
    "InteractiveShell.ast_node_interactivity = \"all\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "# 1 基础圆环图绘制 Basic donut plot\r\n",
    "下面是使用matplotlib库制作的基本圆环图的实例。这里的诀窍是做一个饼图，在中间加一个白色的圆圈。注意另一个选择是使用半径radius和宽度width参数。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "首先创建一个饼图，如下所示"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "\n",
    "# ----- 步骤一\n",
    " \n",
    "# create data\n",
    "# 创建数据\n",
    "size_of_groups=[12,11,3,30]\n",
    " \n",
    "# 设置等比例轴，x和y轴等比例\n",
    "plt.axis('equal') \n",
    "# Create a pieplot\n",
    "# 创建饼图\n",
    "plt.pie(size_of_groups);\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "然后在饼图中间添加一个白色的圆，就能够得到圆环图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    "\r\n",
    "\r\n",
    "# ----- 步骤一\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "size_of_groups=[12,11,3,30]\r\n",
    " \r\n",
    "# Create a pieplot\r\n",
    "# 创建饼图\r\n",
    "plt.pie(size_of_groups)\r\n",
    "#plt.show()\r\n",
    " \r\n",
    "# ----- 步骤二\r\n",
    "\r\n",
    "# add a circle at the center\r\n",
    "# 添加一个圆\r\n",
    "my_circle=plt.Circle( (0,0), 0.7, color='white')\r\n",
    "# 获得当前显示的图表，也就是前面画的饼图\r\n",
    "p=plt.gcf()\r\n",
    "# 将两图相加\r\n",
    "p.gca().add_artist(my_circle)\r\n",
    "\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "上面创建饼图的方式太麻烦，事实上matplotlib可以直接设定pie中wedgeprops参数来实现饼图绘制,wedgeprops中通过width参数设定内部圆的半径，edgecolor设置内部圆的颜色。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWQAAADuCAYAAAAOR30qAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzt3XeUFFXaBvCnQqfqMIFJZBgQAxkkCyyoiIKggCAGDMCqmMPq6q6r4ho+V13XhDmBihjIGBZJIlEyiMCQYWaYyHR3VXVXV/j+QDcpCkxP3eqe93fOHNY9wvs4Os/cqXAvZ1kWCCGEsMezDkAIIeQYKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIKmRCCHEIkXUAQo6DB5ANIA9A7o+/5sEy8xCPNoVlZMKyeAAC8NOv4PHTIoPjKyF6SuGSygBU/c9HMYBSAHTCL3EUKmTCmhdAGwBnwUi0QzxyNnjhLLj9DaHHdahHE5DLTchlHMIlLkRKvZDLOGgyYBmAZQKW9eOvP36AA7whwJcF+LINBHI1SLk6pGwTUgMgkOeG6OGhyQdhWTvhDa0HL+4AsBPADgA1LD8hpP7iLIsWCcQ2HIAzAPSDWn0ROKE7XFIuIiUKyrYDJRv9KP+BR/kOoLII0GN1l8SbCTQoBBq0Bhq0NpHfVkbOGSYym0rQ4xWwzFXwZS4GsAnACgB63YUh5BgqZFKXBADtAfSDUjUULl9PxKM89i3jsHuRhENrgcrdgOmgruN4IPcMoMnZQJdrDD2vHWfwLk2JG+tCPtd8gecWAlgHwGQdlaQfKmSSbC4AAxCPXAVevARKFYc9iwXsWeLDgZVAzSHW+U6YNXqa8YnSSXji8x/QrUUWehXmaIPa5muZkithWfjE7xE/BPANaPVMkoQKmSSDB8B5iIWvhuAaiqq9BjZPD+D72Tyq97HOdsqse4qs6z/exy3eUfZf/3+r3AAubFdgXNK5sdwky8cnDHNe0Ot6H8BCAHV4nYWkOypkcqo4AH0QC98G0T0UZT8ksGl6ENvncAgfZp2t9oIFsG7bhFYPfQ3zVy5ONM70YVDbfGtE58aRNgVBt6abc4Je1zMA1oKe4iAniQqZnKwsmPq10JQ7EQ9nYdUUCVs+5hE9wjpXcp05DOELnjM6PLlKONHfkhNwY2SXJuaEvoWqR+QPh3yu/wMwHYBSd0FJOqFCJifqLMQjfwDvuhy7vjSx+hUJ+1ewzlRnrAufMpdnXcJd/dZ33Mn+Xo4D+p+Wi4n9CqNdm2dxpmW9LbnF5wHsqoOoJI1QIZPf0guxmr/Bsrpg9SsufPemiGjZb/+uFGdNWm0+ssrg31mxr1Z/TpMsH67u1Vy7sntz07Ss9SGf6z4Ay5MSkqQdKmRyPN0Qq3kahnY2vn7Uh00fcDASrDPZQ/TCuv8gOj+2GEeV5DxA4RF5DO/UyPrDBWeoHpFfF/K57gLwXVL+cJI2qJDJ/+qMWM3TMPWeWPSYDxumcjA01pns1awXtDEfmm0eXZH0vV5cAofLuzWz7h7UJsZz3LKQz3UPgK3JnkNSExUy+cmZiNX8HZbVD4sf92D9Ozz0OOtMTFjn3GntPPNW84IXTvyG3snyiDzG9Wph3nZu6ziAr4Je1x9A15jrPSpk4oemTIZl3oSlT7qx5nWhTl9ZTgHWNXONNw41Fh6b/0Odz/K7BVx/Tkv9xv6tdADv+D3ivQAidT6YOBIVcv3FARgOTX4du76S8Pm9Un24WXcirPsPY9hrG7DlcNi2mVmSCw9d3FYd1DZfkdzieACzbRtOHIMKuX5qiVj4TcSOdsesSX7s+4Z1Hudo0Brm75ei8KGlTMb3KmyAZ0d3VAJe8Zug1zUeQBq8ZUNOFG1QX7+ISKgPQlO24dvn+uKFLlTG/6tpD1RE4gar8Sv3VOJ3Ty+R3l2xb6CqGTsThnk7jm3SROoBWiHXH80Rj8zCkW1t8NlECUcPsM7jSNalrxnz0Ve45cMNrKOgVW4Az47uKBfm+vcFva6ROLZXM0ljtEKuDyxzNDRlK755uh3eHkxl/Gta9OG//L6UdQoAwO7yKC55+Vv//32x40xF09eZlnUF60ykbtEKOb0FEI+8injkEky/UkLxetZ5nM2XBevuHTj94UXQdGdtd3xmwyDeuqabEvS5Pgl4xBsBqKwzkeSjFXL66oJ4dDt2fH4pXuxGZXwimnSDqsiG08oYALaXRHD+35dJy3dVXBaN61tw7NgrkmaokNORqV+FePQbzL2tMT6b6IMWZZ0oJVjNe5vbKgzHfk1E4zpunLbO9+SC7S0VTV9vmtblrDOR5HLsf3zklPDQlCehVL6KN8+TsPXTk96prF4rHIglOysd/zmbtvoAf9krK/1lkfibclx/A3RYcdqgQk4fEuKR2ajcdQum9JZQtp11ntTCi0DeGfzMDanx2O+24jDOf3aptPVwzdhoTP8cgMQ6E6k9KuT00BDxyBoUfX0u3jzfD7mCdZ7UU9AeRiJmFdekzmvjkbiOq95cLS3eUdYnGtNXAshhnYnUDhVy6usATd6MFS+2wcfX+OrrhkC11rQHDtU48G7eb0gYFm79cIPv/dX7z5Dj+gYALVlnIqeOCjm1dYOmLMecWxtg6ZMu1mFSmdVqgLFifzRl34h74vMf3E99uaOhounrAHRmnYecGirk1NUTmrIIn1wXpJt3SdC0hzBnUzHrFLXy7op9wl0fbcpUNP0bAOexzkNOHhVyauoNTfknPh4XwM4vWGdJfRlNANGLVXuqWCeptS+2lXLXvLXGL8f12aBSTjn0uEzqOQea/AU+utqP3V+zzmIflw+QcgB/LuDPOfbhywI4AeD4YyeLcjwADoiHgdhRQK3+90e4GEgc5+W2pj1wNKIYSJNNfNbuq8a1b6+R3r2++yzJLQ4CkL6n0aYZKuTU0h+aPB/Tr/BjzxLWWeqGLwsoaA/kng7kt4uhoEMcDVq54fa7kIiFYSaqYJnl4PhiCJ4ycJwGjjMBzgDHGQAH6LEGMBL5sMwccHw2eDETLl8DxCMaqvYkUPa9B2XbvSjbDhSvh9Wir7GuVE+rnxbX7qvGjVPX+V+5uusXklvsD4D9bknkN9FeFqnjbGjKUnw4RsLeZayzJE8gH2jeG2jZL4ZWAzUEG3qgyTvBi+vhDW0A8D2A7Ti2L3Bt/mMVADQDcBqANohHO8DQusMdOMPiec+Gg2Ft6qoD7lV7KlGSQo++/ZbBbQusv4/pGPa5xV449nkkDkaFnBpaQJPX49MJWdixgHWW2ss7C2h7qYEOoxUECwRoyhr4MueD45fh2ErOzuOtRQBdAXSrVrQhXlHoUxqOYeaGw9LnW0qEXWWp/9r5iC6Nrb9e0q5KcovdAOxlnYccHxWy82UhHt2ARY82wepXUvcaZ35boP1lOjqMicEbigH8h3BL0wGsAuCk538FAH2UuD7GAsZEYrpn9sbDns/WH3btOJK6R92N69XcuG/wGeV+j3g26BQSx6JCdjY34pFvsOnDjljwBw/rMCfN5QPajQR63RxBZvMEOP4duHwfAliH2l1+sAsHoEs8YYwxLGvC7jJZfG3Z7uAX20qRMFIh/n+7ZWBr/cb+rXYHPGIXAArrPOTnqJCdi0M88hEOrByCD8ZIsJy0iPwNoUZAz0kaul5nwtRXwZf5NIAvADA7GikJXACG1aiJ+zig3dRV+13TVu0XU+168wtjO6sDTs9bGPCKw5Ea3xTrFSpkp9KUx1G993a8ca503Me1nCZYAPS7N4ZOV1iwzLfh9j8LYDfrWHXgTDmu387z3NUz1x8Wnlu401MWSY1X1j0ij1k395Fb5Pj/5nMJj7DOQ/4bFbIzDYFcMQMv95Qgl7PO8tsCeUDfe+LoMs6EZb4Bt/+vAMpYx7JBrqLpD3LgJry/er/w0uIid7Vi5/3IU5Mb9ODLO/op2X73aADzWech/0aF7DxNoCnbMO3SEA6sYp3l1wlu4Jw7dPS5MwGY78IdmAyghHUsBhpH4/ojPIcr31y+V3hxUZEr7vB9iro0y8K0Cd0jklvsCHrywjGokJ1FRDy8Gt8+3wHL/ubsl3YKBwDDX5LhCa6ANzQRwH7WkRygRSSWeFHRjAF3zdgofVtUyTrPr7quTwvj7kGn7w54xI4AUutieJqiQnYSTXkSJRtuxTtDJDj130uwALjoaQWtBkbh9k8AMJd1JAcaqmj624u2l/n/Mmebr0rWWOc5rleu6qqec1rOjIBHvJZ1FkKF7CTnQa2egxe7+Rx73fis4cDwl1TwwotwSQ+DHp36NQFF0580TOv6B2dt9c7aWOzIHfkCHhFL//A7pUHAcymAr1jnqe+okJ2hAJqyHR+OyXTka9EuCRjyTAxnDauGO3AJgDWsI6WQrnJc/+zLbaV5D8zc4o0lnHdtue9pOXj16q4VkltsDaCGdZ76LK02VElRHGLhd7HmVb8jy7igA3DzGgVnXjwH7sDpoDI+Wev8HrHtoLMK5n95Rz+5VW6AdZ6f+WZXBeZvLglEY/oLrLPUd1TI7I1ErLoPFj/uvBM/2l9m4fovZWQ0nghPcAyA1H13mK1owCte1ijTd8fcW/sol3Zu7LgfSx+Z+703rhsjAQxinaU+o0sWbGVDU3Zj6vBMHHTQwpPjgAF/TqDnTdVw+88FsJV1pDTSQY7r8z9ccyDvsQXb3U768qNLF+zRCpkhOSFPi/F8JtqNYh3l30QvMHqaih43bIfb3wFUxsm22e8RO17erdn3L47toroE59zro0sX7FEhs9NLN/X+ty2+DYfOushS7tlhollvtol8WcCEhTIK+38JT7AHgCNsA6WtqoBX7N2vTc7SDyb2VAIe5zxy/h+XLvqzzlIfUSGzIUa16HuPrX5MWlm8EhfPHMa9sXMG1HGfQb/yYxOi1/5Evizg+i9lZBe+A09wBOhFgbqmBr2uoWc1DH0455Y+cm7QGZv5ReM6Hp6zTYrEEq+A+sF29AlnIGEmbi46WtTw872fAwB0S8frW17nR8wZgc2hHCh/2Gmh05X2BZKygfH/lJHR5HW4/beCdgGzi+H3iBMbZvqenjmpt9LA72adBwAwd3MJio/GmgC4nHWW+oZu6tkvENNjxVcuuDK4s3rnL/4NF7W8yPpzzz9z7ur9hmfaKAGROtwewp8DXP+VjGDDKXBL94LKmAlVM54oPqreeunL3/rDMZ11HHRvmY23r+1W7veIzUA/LdmGVsg2ixvxO5cfXi4cr4wBYMHeBdzgTwfjq+heqLetB86ro10SPUHgui9kBBu+SGXMls8tPFCQ4Z364cSesuRmfzDMmr1V+G5/taTp5u2ss9QntEK2V2ZMjx0aNXeUf3/4xPbi6ZrfFU+e84QVMk1Tmn61gOJ1yUnCi8C4WQoadv4YnsB1oDJ2Aj4a16duLwlfctUbqyXWO8a1yvVj3q19ZZ9baA7A2TslpQlaIdsopsfuXbh/IX+iZQwA646sw0Uzh3Dv7Z3Lxa6fD2P0VAt8Eu7KD3s+hoad1sITmAAqY6cwAx5x3JkFoUXPXd6J+akEu8tlzNp4WFDi+mTWWeoLWiHbJzemx/YNnzVcKpaLT+kPaBFqgSfOedwsDDaFNPcuHts+PbUkfe/Rcc4de+AJng16+86JfNGYvnbK0t2nv7S4iOkzcTkBN5bdO0CV3OJZAPaxzFIf0ArZJkpC+fO8PfP4Uy1jANgX3oexC67gn1j3DCcPfx7axMUG/Lkn94e0GQz0vasGnuAAUBk7lRrwihfcPKBVeOAZeUyDVEQ1fLD6gCDH9XuYBqknqJDt0ZDn+IlTNk1JygPGs4pmcRfNHIIliXKod2wC+v/xxH5jRhNg5Osq3P5hAE79OwOxw2HJLV78/NjOatNsH9Mgby7f6xZ47noAGUyD1ANUyDaI6bG7Z++ezZcpyTtmripWhbuX3iPcvvhOlPcYb6l3bDaQ3+74v4EXgTHvyxDcfwWwImlBSF1a4Rb4B965rrvsFth9qZbUxLD4hzIrYZi/ZxainqBCrns+ADe8t+29OnkVa2XJSlz42UXchwe/5mITF8Ic8boF7hf+tQ58UEN24XqI3ifrIgepG26R/0de0PPtXee3YXrsyMtLdksJw7wPgPN2JUwjVMh174qN5RtxIHKgzgbEjTj+vv7v/Nj5V2BXkw6Wcm+RiTOG/PtvaNEX6P57Gd7QKADO2yGd/Bor6HVdc03vFvEOTdhdMdhyuAa7jkQ9AEYyC1EPUCHXLS6iRR54a+tbtuxKXnS0CJfNHc0/s/FlThn5OrTrvzQQLABGvqHALV0NIHnXTIidSj0u/oYXr+gie0R2X7IvLNoVCKuJhwA4Z4u6NEOFXLd6qrqav6p4lW0DLViYsXMGN2TmUKzgYlBv2wC4/UsAzLctBEk6nuOmZ0mu5SwvXXz9QxlkTW8KoC+rDOmOCrkORbXo7dO+n+azGLx3UaFW4Pn1zwscx6vwBCfZHoAkmxX0uq65ulfzWNtGITYBLOC1ZXuksJqg16nrCBVy3clwCa7hs3fPZvI55sDhr+f8VRZ58S4AJ/5qIHGyIx5RuO/R4e1kVgHmbirmPCJ/IQCJVYZ0RoVcR0zLHLuyeKVRFatiMn9Q80FoFmx2UOTF15kEIHVC4Lk32uQHKweczuaFkYqohs2Ha3QAQ5kESHNUyHUkokXGzyya6WcxW+AE3N3tbjngDtwGwGCRgdQZPeAVb5k8vK0s8GzurX209mCwRk1MZDI8zVEh140GXsHbfsVhNu9fDCkcYgVcgR0AFjIJQOravEzJtX302U2YbETz5dZSeEW+L4BMFvPTGRVy3bh4TemaRMywf19vkRdxZ9c7laA7eAdoF7d0ZQW9rpv+eOGZMRaPwUXiOlbsrkwAGGH78DRHhVwHauI14xbsXWDLs8f/a0TrEZZbcG8E8A2L+cQ23wFYfWnnxky+6X703cHAUUW7gcXsdEaFnHwBn+jrvezQMtsHC5yAWzrfoobcobtsH05sl+FzTb5lYGuZY3ApefEPZfCIQkcABfZPT19UyMl34daKrVpYC9s+eGCzgRA4YSeANbYPJywsyfC5Svu3OcktWJMgrptYuadSA3Ce7cPTGBVykoXj4avm7ZkXZDF7fLvxkZAn9BiL2YQJK+h1PXLrwNOY7Gu96IeyYFhNDPntv5OcKCrk5BK9ovf8xQcX2z64dWZrFGYW6gBm2T6csDTjzIZB/cyG9q8BVhRVQOC580F7WyQNFXJydaxQK/QKtcL2wWNOHxPnwb8CgP0Z8sROmsBxL4/p1ixu9+A9FTIShukDUGj37HRFhZxEpmX2X1m80vb9Yl28C8NaDbM8oudVu2cT9jwuYdqlnRubLN4T+baowgIw0P7J6YkKOYnCWnjIqpJVSTmm6WT0bNgTCTOxE7RnRX31A4BDPQob2D54yY5y/1FFG2b74DRFhZw8XMBw9Xms85+t+Rd9ZjzU6yH0LOhpy+DBLQerAXfgXVuGEUfye4TXR3Vtoto9d8XuSnhEoT/oOnJScJZFL3MlSSvj6NHNB8aPl3xdukDq3duQOncWOK8XYbnS2KwU8UsPLeU+3/M5ono0aUN5jse3l38bC7gDZ4KOaa/PmiiavqvTI//0aoa9h8Ks/dN50dygpyeAbbYOTkMi6wBppLu6ZYsR2/Y9Ytu+R/XUaQIAiAUFkLp0ETp072b07DmOe/Ds+/mYHDb3xouxsmwNP2/3PBTVFJ3y0C55XWDCPAQq4/rukKabu3q1atB+6c5yWwdvPHjUOv+s/E6gQq41KuQkMVW1t7Jm7c9el9ZLSxFesADhBQsEAOAkCb727ficLl2ty/v0Nq674ArBNHSrPFZhrKvZJi7cvxBLDy+Fbp7YwxKDmg/SfKJvapL/cUgK8nvEmee0zjlj6c5yW28sbzl01N+/TW4Ht8i/b+fcdESXLJLEOHp0y6Hb72inrF59cr+R4+Bu1QpSl86QevY0pLPP5oWMDC4qVxs/xPbxyw4v5+bvmY+K2C8/Srdw1MJIvj+/H4CNtf+nICnunD3l0fkDn1lq65EiF7QtwBMj2i/N9rt/Z+fcdESFnByclUjEdvbq7Tajtb8+LGRnw9epE6Ru3Uypdy94Cgv5hBI1D8WPWKsr1wsL9i7ApvJNyPHl4IuRXygewRMEnSZNALemm+Fujy301KgJ24a2zPFj7i3nlAe8Iptd89MIXbJIjlxL08xklDEAGFVViC5ahOiiRTwAcC4XvG3b8oEuna1hfXobY/pNEcALkOMRUzO0bR7BQ2VMAECTNX19z8LsXl9uO2Lb0P2VMjwuPguAHwCz46XSAT32lhzNE2XldfamlJVIQN24EVVvvc0dHD9R2Hl2d+wdfgn474sQEP32bytHHCvkdc3qe1qurW/tmRZwuFpVAJxl59x0RIWcHM0Thw/Z+hxm4uBBiNkNIhzPz7dzLnE2gedWd22eZfvJCNuKwzyAtnbPTTdUyMnRTNu339439EQR7laFEoB1ts4lTretRY7fZ/fQrcU1/ljC6GT33HRDhZwEpqKcljh40G3nTE/LlrDi8QoA9m+8TJysAhZiBSF71weHq1VO1YzTbB2ahqiQk8CMx09PlBTbOtPVuDEsXd9r61CSEmIJY9fpBfZux1kpx2HR6SG1RoWcBBzPN08U21zIjRqBE8Vdtg4lKcHj4te2ybe5kKMaRJ6z/+iSNEOFnAScx1OQOGxzITdpogvB4A+2DiUpQXKLG89qGFTsnFkZ1eAS+Ew7Z6YjKuTaC3CC4Daqq20d6m7eTAVwwNahJFWUFGT47HszBEC1osEj8n4Agp1z0w0Vcu011auqbd/20NW0qQna/5j8srLcoK33mKGbFmIJQwOQbevgNEOFXHs+K6ba/qacq6DABVohk19Wlim5bV+pHlUTCQD0+nQtUCHXnmAZhs0TBfB+vxeAvReuSaooC3ldtp9cUyVrJqiQa4UKufZE2FzInMsFWJYJwObvBCRFyDwH+Fz2LpIjMR0AfrYFLTlxVMi1Z/sKmRMEwDSpjMnxWJphyhk+e8/b1U2TA93UqxUq5NoTWVyysI6tkAn5RaYFXbD5GGrDtADaQbJW6JNXe4LtlywE4adLFoT8Ig7g7rmgzU+XEWzROi/gA2Dv4x1phgq59piskGFZdMmCHJdXj4vnqwcMU1FtO4FCMoMCIGXYNS8dUSHXngDdvlUI8K8VMhUy+TWJkj8/KOg2vtLf9LXXwoF+fe09YTXN0DXk2mO1Qqazt8hxcRwnQrf1ZT1womABsHdomqFCrj3BMkxb756YkQjgckl2ziQphudFS2fwOCZg74+LaYYKufZkIRCwdbVqRiLgeN4FwPaNyElKEDmXy2eEbd4qWxQBWiHXChVy7ZUKOQ3sfb4IgBGOxADk2z2XpIQCU5bjdt/b4CUJAGzf1yWdUCHX3hEhM9P2R32M6iodtCE4+WWN9YpKze6hYm6uCOCw3XPTCRVy7VXwPp/7xx/XbKOXlwO0Qia/rHGipNjen9o4DkIoRPur1BIVcu0ZVjweFbOzbB2aKC11gVbI5Jc1Thw6bOtPbUJWFixdjwGw/cTrdEKFnASWlqgSGuTYOlMvLfValkWFTH7G1LRmieLDtu72Jubnw4rH6RnkWqJCTgLLNMrEHHsLWdu/nzfD4c62DiUpwVLV0/QjR2yd6crPh2WadLmilqiQk4Dj+UNiTgNbZ8Z37AQ4jgqZ/BzHdYoX7bZ1pJifB04U6RT0WqJCTgLO6z0g2nzJIl5UBF6SGgHw2DqYOF2A9/kaxXbssHWoK7/A5P1+e78LpCEq5CTgPZ7DYn6+rY8ZWZoG/UiZCqCtnXOJ43WN792rIGHv+xmuJo1VjucP2To0DVEhJ8deT+tWtt9dVtatEwB0t3sucS7Lsnooa9fa/ganq3FjHfQMcq1RISfHZk+bNraflKCs+04ywuGBds8lzmXW1Jynbthg+4tKrsaNeQAH7Z6bbqiQk2OPEAq5+IC9x4mpGzcBHN/H1qHE0Ti3+2x102ZbZ/KBAMQGDTwAtts6OA1RISeHYcrKXk+bNrYOje/aBXDIBtDC1sHEqRrDsnyJg/YuVL3t28OU5R2gnd5qjQo5WQR+rff00+2daZqIfr3IskxzuL2DiUMNlVeutP3gAl/Hjibn9S6ye246okJOEiEYXOHr3Emxe274i899ZiQyzu65xHmMmprraubO9ds919+9W5T3er+1e246okJOntW+rl1t/5FNXrESnNfbFoC9b6YQp2nAeb2dosu+sX2wt317F4A1tg9OQ1TIybPFlZfntfvGnhWPQ1m9OgFgiK2DidMMV1atSliqvdsRi40agRPFBIADtg5OU1TIyZMwZXmHt3172weH5y8IGDU1V9k+mDiGUVNzbc2cOfauBgD42reHFY+vA0BnPCYBFXIScV7vIl/Hjqbdc6NLl4LzevsCsP0LkjhCJuf19oguWWr7YF/nzgk+FKIbeklChZxEvNe7KDhwYNTuucbRo1BWr9Et06RVcv00XF23Lm7Ksu2D/d27KxzPr7J9cJqiQk6uhZ4zTvfwGRm2D658842AqSgPALD9fD/ClhEO/7Fq6rSg3XM5rxfu1q18ANbaPTtdUSEnl2Kp6jeB/v3tH7x6DYzq6iwA59o+nLDUw9K0ZtGl9l+uCPTtC0tRNwGosX14mqJCTjIhI+P9jCFDbL9sAQCVr77mN8LhP7GYTdgwIpH7Kt96ywvT9lsXCF08VBYyM962fXAao0JOvnlSzx5uzmP/NsU18+ZxEISeAFrbPpyw0JwTxQuPfvKp7V/HnNuNQL9+IoCZds9OZ1TIyVdhqeo2f69etg+2YjEcnf4RbyrKnbYPJ7YzZfn+6unTeTMctn22v09vWPH4DwBKbR+exqiQ6wAfDE4LDh5s7xP6P6qaNs0Nnr8WQD6L+cQ2ORCEcVVvv237VpsAEBoyROGDwbdYzE5nVMh1gBOEWcFzBwK8/Z9evaQER2fMEIxo9CnbhxPbmLI8OTx3HqcP1bh0AAARPklEQVSXMTjo2eVC8NxzBY7nP7N/eHqjQq4be2BZpb6OHZkML3/xJQ+AywC0YxKA1LUzAVxb9uyzXhbD/T26w9K03QDoyKYko0KuI5zX+0HwggvsPdjsR2Y4jPLn/uExwpEpLOaTOsUZkcjr5c+/4DGqq5kECA0ZovKBAD1dUQeokOsI73ZPzRw5QufcTC7xoXr6dN6Uo50BDGYSgNSVoWY43Knq/ffZfO0KAoKDBnGcIHzKZH6ao0KuOztgWetCF13IZrquo3TyZL8Rjb4CQGQTgiSZx5TlV0seesgPnc3hHIH+/QHD2ANgL5MAaY4KuQ4JodDjDW64gclLIgAQXbwE8V27ckxNu5VVBpI8pqbdrWzcGJKXs9sLvsHECREhFHqcWYA0R4Vct74Uc3PDvi5dmAUo/uP9fhjGYwDsPfCPJFsbGMafSic/avuJID9xt2oF7xlnmAA+ZpUh3VEh1y2T9/mebDBhvP3bcP0osX8/yp55xmNEo5+CLl2kKo8Rjc4t+9vT3sT+/cxCZF9zTQw8/yIAjVmINEeFXMc4QXjH37s3JxYUMMtQ/f4HfHzHjpZmLPYXZiHIKTMV5Vl13bom1R98wOzrlQ8GkXHxUPAez8usMtQHVMh1LwLDfC/7qiuZPAIHALAsHL7zTr+VSNwDoC+zHORUDDFV9drD994nsQyRNXasYenGPADFLHOkO86y6OQVG7Q2ZHnLrt59vFY8ziyEv18/NHnu75W8JJ0OoJJZEHKiGpuq+v2BCRND6rp1zEJwHg9O+2aZKoRC3QFsZRakHqAVsj2KYBirQkOHMv3uJy9bhuoZM4JGNDoHAJsHpMmJEoxo9LPKN9/0sSxjAMi49BILwEpQGdc5WiHbZ0DiyJG5Reed70eC3dULCAKavvqK4uvceZ7g918OOpzSiThTUd6Kfb/9sv3jxvlZ7HX8L4KA05YslsXc3EEAVrALUj/QCtk+i3lJWpc1dizDry4AhoFDt94mJQ4dGmKq6hNMs5BfZKrqo4mSkssO3nAD2zIGkHHxxRbn9e4ElbEtaIVsr7ZGNLq26NzzfGYN21NvhOxstJz5mSI2aHAnJ4qvMQ1D/sVKJCbpVVV/2ztipGRUsr3Mz/sltF60SBEyMgYCWM00TD1BK2R7bQPwUe4tN7O7s/cjo6oK+8ddI5mq+hyAIazzEADACFNRnt5/1dXMyxgAcm6apEEQ5oPK2Da0QrZfnhmL7d0z/BKJ5UP+P/F27Ijm77yt8D7fIADs3skl/U1ZXrD/6nFS7PvvWWeBq1kzFM6epfA+X2sAJazz1Be0QrZfGXj+sYIH7mf29t5/im3ahEO33iqZivIVgItY56mn+pqqOv/gzbc4oowBoOAvD8rg+cdAZWwrKmQGeLf7WalbN0Xq1o11FACAvPxbHLh+vGREo59Yun4l6zz1zFBTUb44OOlmv7JqFessAI6dlyd17hzhPZ5nWGepb6iQ2YjxknRbwcMPRcFxrLMAANSNG7Hv8rE+IxJ5zdS021nnqQ8swxhnRCIz9l97naSsXMk6zjGiiILJk2Xe778BAPN7HfUNFTI7H4l5efsyhg1zzEV8ragI+0aNkozKysdNVX0cgDO+W6QfzlTVR43q6in7Lh/ri23ezDrPv2RdcYUphEIbAcxlnaU+opt6bPUwwuHFuy8Y7GN1HM8vEbKz0Xzqe4pYUDBH8PvHA1BYZ0ojbiMqv5coKR564Lrr/UZFBes8/yJkZaH1wn+qvN9/NgBnXMyuZ2iFzNZqThRfbfjE444qPKOqCvtGj5bkZcuGG7K8DUBb1pnSRBsjGt2kfLf24n2jxziqjAGg4JGHVQDvgMqYGSpkxnhJul/q1q0sNOxiR/2oYsoKDt95l+/IY483NxVljWUY40GXME4VZxnGeFNVN5Q/+/c2h268SbJUlXWm/5IxcoTl79PnCO/33806S31GlyycobMhy9/uGTLUp5eWss7yM+5WrdD0lSmykJX1pRAIXAsgwjpTCskyotF3jaqqgYduvsUf37WLdZ6fcRcWouWnn6i8z9cNx15eIozQCtkZNnCC8FTjZ59RwDvvX4m2ezf2XDzMH/nnPy8yZXk7gJ6sM6WIvqai7AzPnTtoz8XDHFnGnNuNpi+/JHMu152gMmaOVsjOIRrR6KqqN9/qWDFlimOPWgoOHmw1fOThGETxY8HvvxNAFetMDpRnyPJTMIzRxffe54suWcI6z3EVPPRQPDR0yEIhGLwYtPMfc1TIztLEVNVtB8ZPCKnr17POclx8MIi8u++OZQwfpnEez90cz78NwGCdywHclqbdbhnGQ0c//VQsf/4FjxkOs850XIGBA9H46b+V/XhgwVHWeQgVshMN1SsrP9p90RCJ9Y5wv8Xbri0KHnlEdjdvXiIEAr8HsJh1JkY4AMNMWZ6ibt4cKp082a/t3cc6068S8/NROH+eKgQC5+LY5vPEAaiQHchUlBfVzZuvOzB+ggTD+QvP4AUXoODBPyuc271BCIUeArAI9efH315GJPKsUVPTvvThh/3y8hTYn4nn0WL6h7KnTZuneK93Mus45N+okJ3JZUSjX0e++qpbyQN/8rIOcyI4lwuhYcOs3JsnKXwwWCwEgw8D+BgAw+NR6owLwEgjHH7Qisebl788xXd0xgw+Fb55AkDevX/QMkePXi8EAueALjU5ChWycwWNaPS7qjffalkxZYqLdZgTxnEI9O+PnEk3RT2tW8c4t/sJThRfR3o8KpdtJRI3WInEPfGi3a6KV18NRhcvButTPU5G9jXjjNzbby/hJakLgHLWech/o0J2toamomwsfWRybs3s2Sn3Uoa3fXvk3Hij7D+nD2dp2jwhGHwXwEIAGutsJ4EH0MeU5eshCJdHvv7arHrzLcdsk3kyQhddZDX866NVvCR1BcB+M27yM1TIznemqaqrD918S1BekZrHmol5eQgOvsDKvPTSiLuwULQ0be6P5fw1nFnOIoA+pqKMATBWr6gQjs6cKdV88qmgl6fmotLfuzeavPRihPf5+gDYwjoP+WVUyKmhrynLX+y74kopvmMH6yy1IubnIzT4Aivj0ksj7hYtREvTvhBCoa8ArMKxY+ZZXNPkAZyGY5s9jeA8nvMTxcV6eN58f/jzzwVtzx4GkZLH264tmr/3nspL0gUAvmGdhxwfFXKKsExztFFT8/beS0dITny9+lSIBQUI9O8H6exuitTtbEPIznabsrKV90sLebd7OYDvABxBcp/Y4AA0A9DNjMV6mWrsd7xfOssMh3V1yxYrunhxMLpkKfSysiSOZMfVvDlafjxDFUKhKwDMYp2H/Doq5BRixuP36kfKHto7cqRkRtLhHtl/4zMy4OvQAVKXzobUo0fUe/rpHs7t5k1VLbUMYy/ncu3h/f69HMeV4tgNKR2A+T8fP/0HnQugoRmPN7VUtaVlWU05QcjnPJ4GVjyO2LZtCWXt2oC6eQsf27oVxtH0ey9CzM1Fy88+VYSsLDpZPEVQIacWzpTlFxMlpdfsHzfOb1Sl/1vLvN8PV5MmcDdtCjE/D2Jurulq1Cgm5ubqEASL4ziA5wGeB8fzAHdsLxC9soJPFJd49NISt15eDr2sHHr5sY90LN//xQcCaPHxDNnVsOHTvNf7MOs85MRQIacezlTVx4yjNbfvv+pKKXG4mHUe4jBCVhaaT50quxoWTOP9/ptQf17SSXlUyCnK1LTbTVl+fP/V4yStqIh1HOIQYsOGaPH+NEXIynqB9/nuB5VxSqFCTmGWrl9lxmKvHZww0adu3Mg6DmHM3bIlmk+bqvCBwF/oxOjURIWc+i40FeWTQ7fdLsnLl7POQhjxduyIZq+/pvJ+/yROEN5hnYecGufthk5O1ue8JJ3f5IXnI6EhQ+i7az0UvGCQ1fztt2QhFLqMyji10Qo5fbQ3VXVJ2TPPZFRPe19gHYbYo8GE8XrOpEk1vCSdD2AD6zykdqiQ00tLU5YXR5YsySt58C8+S3HUYdYkiTiXCwUPPxQLDh58SPD7BwA4xDoTqT0q5PTjN6LR18xwePjBmyb5U/1Va/Jz7pYt0OTFl2QxP2+FEAiMAuDcY0nISaFCTlOWaV5lxeOvHPm/p3xHp0+newVpIvOyUWb+Aw/EOVG8h3O5poAea0srVMjprY0hy/OVVasaFd/3R8mMRlnnIaeID4XQ6MknVKlHj2LB7x8GIPX2/yS/iQo5/XlNWX7RkOWxhybdLMW2bmWdh5wkX9euaPL8PxTe653K+/13AIixzkTqBhVy/THKVNW3y//xvK/q3XcF0L935xME5N56SyL7mmsU3ue7EsB81pFI3aJCrl9aGtHobG3//sKS++/3x3fuYp2HHIe7RQs0fvYZ2dWs2UYhELgMQAnrTKTuUSHXP4Kl6zdYuv5U9fTprvLnX3DT43HOwYdCyL31lnjmqFE6BOFB3u3+B45tK0rqASrk+ivfiEZfsjTtwtKHH5YiX/2TdZ76TRCQNWa0mXvXXXEAM4RA4F4A6bFLPjlhVMhkgBGNvqHt2ZtX+sjDgdg2unlvN3+f3ih45BFZyMjYJgSDEwFsZp2JsEGFTABAsAxjvKVpT0W+/tpd9tRTPr0sNQ/zTCXuli2Q/+cHZalTx/CP+xbPAT1XXK9RIZP/FDJV9S8AJtXMnsNXvvGGJ3GI3shNNiEnBzk33nDsOjHPP8q73c8BiLPORdijQia/pKGpqneB426Sv12Bilde8ce20MnxteU54ww0mDBeDZ53Hmfp+vtCIPAA6Dox+Q9UyOTXBC1dH2/FtQfie3b7Kl56ORBduhT0DPNJ4HkE+vdHzo03RD2nnZaAKD7Du92vAKhkHY04DxUyOREigMuMSOQRIxxuWPHyFH94zhzOSiRY53Is3i8hY8RIq8HECQrv9R4UQqHJAD4BQJ80clxUyORkcAAGGuHwwwC6Hv3kEzG8YIErtnUb41jO4WrWDNlXXalljhplWrqxSAgFHwOwEnSzjpwAKmRyqtqasdg4S9fHWbFYsGb2bHd4wQJXfXxsztW4EYKDLzQzR46Iuho2AmC9w/t8zwLYzzobSS1UyKS2OACdzFhsrKXrV1uq+mM5f+6KfZ++5ewuLERgwAAzY/iwqLtZM97S9ZlCIPAugKUAdNb5SGqiQibJxAHobMZiYy3DuNqUZX947lyPvHqNS920CWZNDet8p4xzu+Hr0gXB887TgoPO14RAIG5Z1mzB758BYBHo2jBJAipkUleOlbOmjbIU5XxOktobVdWa8t13grJ2raRu3Ih4URFgGKxz/pwowtO6NXzt28PXubMqde2ScDVqJJmKsouXpOmcyzUbx96moy8eklRUyMQuAoC2AHoZ4fBAcNw5nNudE9+xQ5VXrQ6oGzcK2r59SBw+DCtu4zsSggB3s2bwtm8PqVMnzde1i+pu2VKy4vEjsKzVQii0FMBaAJsAqPYFI/URFTJhKRtADyuR6GNEowM4USzkfb4cU1G0RElJQtu3T0gcOuTVy8pFvaIcekUF9PKKHwvbgmVagGkClnnsf1s//bUFyzTBBwJw5eVBzM099pGXa7oaNVJdjRrpYl4eJ2Rnu3ifz2OqsQoY+nd8KLSE47i1ANaDzqkjDFAhE6cRADQC0PLHj4amojQz4/HmABpzopgLjnOD4zgO4MFxwLFfOYDjweHff63rqpVIlFuWVcy5XPt5v38vx3HFOLa38E8fZQAceN2E1EdUyIQQ4hB0GjEhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDgEFTIhhDjE/wOB6qZVC/rjuwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    "\r\n",
    "\r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "size_of_groups=[12,11,3,30]\r\n",
    " \r\n",
    "# Create a pieplot\r\n",
    "# 创建饼图\r\n",
    "plt.pie(size_of_groups,wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    "\r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "# 2 自定义圆环图 Custom matplotlib donut plot\n",
    "本节旨在描述如何自定义圆环图，包括自定义颜色，标签，这些操作都是通用的。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "## 2.1 自定义颜色\n",
    "通过设置饼图的颜色便能够实现圆环图的颜色自定义"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "以下示例设置不同类别的不同颜色来展示圆环图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    " \r\n",
    "# Give color names\r\n",
    "# 画饼图，label设置标签名，colors代表颜色\r\n",
    "plt.pie(size, labels=names, colors=['red','green','blue','skyblue'],wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "以下示例设置循环使用颜色来展示圆环图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    " \r\n",
    "# Create a circle for the center of the plot\r\n",
    "# 创建中间白色圆\r\n",
    "my_circle=plt.Circle( (0,0), 0.7, color='white')\r\n",
    "\r\n",
    " \r\n",
    "# Custom colors --> colors will cycle\r\n",
    "# 自定义颜色，如果颜色长度和数据长度不一致，则会循环使用颜色,即'red','green','red','green'\r\n",
    "# 但是这种方法必须通过创建中间白色圆实现\r\n",
    "plt.pie(size, labels=names, colors=['red','green'])\r\n",
    "p=plt.gcf()\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "p.gca().add_artist(my_circle)\r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "以下示例展示通过Palettable utility库来设置颜色， Palettable utility库说明见[palettable](https://github.com/jiffyclub/palettable)\n",
    "\n",
    "通过以下命令安装palettable\n",
    "> pip install palettable"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    " \r\n",
    "from palettable.colorbrewer.qualitative import Pastel1_7\r\n",
    "plt.pie(size, labels=names, colors=Pastel1_7.hex_colors,wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    "\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "## 2.2 自定义标签"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "以下示例展示自定义标签的位置"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    "\r\n",
    "\r\n",
    "# Label distance: gives the space between labels and the center of the pie\r\n",
    "# labeldistance给出标签和饼图中心之间的间距\r\n",
    "plt.pie(size, labels=names, labeldistance=0.85,wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "以下示例展示自定义标签的颜色"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    " \r\n",
    "# Label color\r\n",
    "# 标签颜色\r\n",
    "plt.rcParams['text.color'] = 'red'\r\n",
    "plt.pie(size, labels=names,wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    "\r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "对于各个类别边缘大小和颜色可以设置饼图的wedgeprops参数来实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# create data\r\n",
    "# 创建数据\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    " \r\n",
    "# Custom wedges\r\n",
    "# wedgeprops设置各个类别边缘宽度和颜色\r\n",
    "plt.pie(size, labels=names, wedgeprops = { 'linewidth' : 7, 'edgecolor' : 'white','width':0.3, 'edgecolor':'w' })\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "## 2.4 自定义背景颜色\n",
    "以下示例展示了如何改变背景颜色"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# library\r\n",
    "import matplotlib.pyplot as plt\r\n",
    "\r\n",
    "# Data\r\n",
    "names='groupA', 'groupB', 'groupC', 'groupD',\r\n",
    "size=[12,11,3,30]\r\n",
    "\r\n",
    "# create a figure and set different background\r\n",
    "fig = plt.figure()\r\n",
    "# 设置背景颜色\r\n",
    "fig.patch.set_facecolor('black')\r\n",
    "\r\n",
    "# Change color of text\r\n",
    "plt.rcParams['text.color'] = 'white'\r\n",
    "\r\n",
    "# Pieplot + circle on it\r\n",
    "plt.pie(size, labels=names,wedgeprops=dict(width=0.3, edgecolor='w'))\r\n",
    " \r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "plt.axis('equal') \r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "## 2.5 自定义标记\n",
    "以下示例显示引出标记，来自定义圆环图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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ffUVSUlJxMfHM27cOGeGZAh79+4FtGT4wAOuuypcJd8aSAjRDm1K2VQpZZWmPpXGlJrykyk1pR/QHy0RleqY/9ADCOF9vfUZyC/A/dPjIvtMj4ssbz82p5FSnkW7HLkBkCCEaOCsunr37k3jxo1Lfey7775jwIABdO7cmVtuuQWAwMBA/vzzT65eLbnrvb+/P88//zxms5muXbty5MgRAL766isiIiLo3LkzAwYM4PTp0wBkZWUxYcIEzGYzwcHBrFhRtKv77NmzdO/enYSEBLKysujfvz9dunTBbDbz5ZdfFhz3yiuv0LFjR3r27MmYMWOYO3cuAEePHmXIkCGEhYXRq1cvUlNLtkfOnz/PvffeS3BwMN26dePAgQP8/vvvPPzww+zatYvQ0FCOHi3YK5WjR4/Spcu1tsbhw4cLfk5MTKRPnz6EhYUxePBg0tO1z+z333+f8PBwQkJCGDlyJJcva18UP/vsM4KCgggJCaF3795kZ2fz97//naVLl1aqxa2SrwEIIW4G1gKvSikdupOxKTVlgyk1pQ/Qj1Jawqda9GzuyPp0lA68AARMj4t02oBXZUkpLwMjgSPAD0KIFq6s/+zZs3h6euLrW/QakBUrVtClSxfq1Cn94jxfX1+SkpJ44oknePrppwHo2bMnO3bsYO/evTz44IP84x//ALSkmX/8gQMHiIwsGMjn9OnTREVFMWfOHKKiovD29ubzzz9nz549fP/99zz77LNIKdm1axcrVqxg//79rFmzht27C3Z0YurUqcybN4/ExETmzp3LtGnTSsT70ksv0blzZw4cOMDrr7/OI488gp+fH//973/p1asX+/bt47bbro1P3nbbbfj6+rJv3z4AFi5cyIQJE8jJyeHJJ59k+fLlJCYmMnHiRP72t78BcN9997Fr1y7279+PyWTigw8+AGDOnDl888037N+/n1WrVuHl5cWcOXN44IEHKtXiVrMddCa0PdJWA59JKf/lrHpMqSkbgY0pnUy9gBnAPRd8b//Z5u5Vk3eryEW72OQD4OvpcZF5FRzvUlLKXCHENOBFtLnA91KNAVGtKFmlXaTXrVvHoEGDitz3008/8cILL7Bu3boyzxszZkzBvzNnamsInThxggceeID09HSys7Np27YtAOvXr+fTT6/N2GvUqBEAOTk59O/fn/nz59OnT5/8J8CLL77Ipk2b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\n",
      "text/plain": [
       "<Figure size 432x216 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Libraries\r\n",
    "import matplotlib.pyplot as plt\r\n",
    "import numpy as np\r\n",
    "\r\n",
    "fig, ax = plt.subplots(figsize=(6, 3), subplot_kw=dict(aspect=\"equal\"))\r\n",
    "\r\n",
    "# 类别名\r\n",
    "recipe = [\"225 g flour\",\r\n",
    "          \"90 g sugar\",\r\n",
    "          \"1 egg\",\r\n",
    "          \"60 g butter\",\r\n",
    "          \"100 ml milk\",\r\n",
    "          \"1/2 package of yeast\"]\r\n",
    "\r\n",
    "data = [225, 90, 50, 60, 100, 5]\r\n",
    "\r\n",
    "# startangle 设置方向\r\n",
    "wedges, texts = ax.pie(data, wedgeprops=dict(width=0.5), startangle=-40)\r\n",
    "\r\n",
    "# 每一类别说明框\r\n",
    "# boxstyle框的类型，fc填充颜色,ec边框颜色,lw边框宽度\r\n",
    "bbox_props = dict(boxstyle=\"square,pad=0.3\", fc='white', ec=\"black\", lw=0.72)\r\n",
    "# 设置框引出方式\r\n",
    "kw = dict(arrowprops=dict(arrowstyle=\"-\"),\r\n",
    "          bbox=bbox_props, zorder=0, va=\"center\")\r\n",
    "\r\n",
    "# 添加标签\r\n",
    "for i, p in enumerate(wedges):\r\n",
    "    ang = (p.theta2 - p.theta1)/2. + p.theta1\r\n",
    "    y = np.sin(np.deg2rad(ang))\r\n",
    "    x = np.cos(np.deg2rad(ang))\r\n",
    "    # 设置方向\r\n",
    "    horizontalalignment = {-1: \"right\", 1: \"left\"}[int(np.sign(x))]\r\n",
    "    connectionstyle = \"angle,angleA=0,angleB={}\".format(ang)\r\n",
    "    kw[\"arrowprops\"].update({\"connectionstyle\": connectionstyle})\r\n",
    "    # 设置标注\r\n",
    "    ax.annotate(recipe[i], xy=(x, y), xytext=(1.35*np.sign(x), 1.4*y),\r\n",
    "                horizontalalignment=horizontalalignment,color='black', **kw)\r\n",
    "\r\n",
    "ax.set_title(\"Matplotlib bakery: A donut\")\r\n",
    "\r\n",
    "plt.show();"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "# 3 多层级圆环图 Donut plot with subgroups\n",
    "以下示例展示了具有三个类别，每个类别具有多个子类别的圆环图。你可以使用半径和宽度选项来设置2个圆级别的位置。然后，为每个组指定一个调色板。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "首先绘制外圈图形，注意该实例通过setp函数实现在内部添加圆"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Libraries\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# Make data: I have 3 groups and 7 subgroups\r\n",
    "# 设置数据\r\n",
    "group_names=['groupA', 'groupB', 'groupC']\r\n",
    "group_size=[12,11,30]\r\n",
    "subgroup_names=['A.1', 'A.2', 'A.3', 'B.1', 'B.2', 'C.1', 'C.2', 'C.3', 'C.4', 'C.5']\r\n",
    "subgroup_size=[4,3,5,6,5,10,5,5,4,6]\r\n",
    " \r\n",
    "# Create colors\r\n",
    "# 设置颜色\r\n",
    "a, b, c=[plt.cm.Blues, plt.cm.Reds, plt.cm.Greens]\r\n",
    " \r\n",
    "# First Ring (outside)\r\n",
    "# 外圈\r\n",
    "fig, ax = plt.subplots()\r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "ax.axis('equal')\r\n",
    "# 画饼图\r\n",
    "mypie, _ = ax.pie(group_size, radius=1.3, labels=group_names, colors=[a(0.6), b(0.6), c(0.6)],wedgeprops=dict(width=0.3, edgecolor='white'));"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "然后再画内圈圆，如下所示"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWQAAAEACAYAAACEfgxsAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsnXd4HNXVxt97p2zVqjdLsixL7h3bgME2LcEU03vHBEIgQBICfCEFEkInIRTTq+kdTDVg4957L5Jl2bJ61/Yp935/rBu4SfLO7K48v+fRY1manXO0u/PumXPPPYdwzmFhYWFhEXtorB2wsLCwsIhgCbKFhYVFnGAJsoWFhUWcYAmyhYWFRZxgCbKFhYVFnGAJsoWFhUWcYAmyhYWFRZwgxtoBC4vDIAPIAZC7618HIu/bQ30pAFoANO/6d9+vAACr+N4iLrEEOfGpAOAFoAMQAPwdwNRYOtRJ0gEMBTCYq0ohgsHenLM8Igg5kOR0iJIDfl+ItTarvLkRPBCg0DUCTSN817/QNAJdo1zTCHSdEJuNkeRUhSSn6CQpGSQpiRCnW4TdIYNSAlUNQFNbuK6XE7t9HbHZNwOoBrASwHYALJZPiMXRC7F26pmOCECL4vkqAIwC0AigH4AfABRG8fzRQkLEv6FcCY/kweDxRLYNBKVOVlkR1Es32lj1TjtvbgRrbgRvagBvaQJvawWi+R6VJBC3ByQtHTQ3DzQnH7Rnr6B0ygR7WJBVkRIS1Nh2cKx124SlhJDFABYhEllbWBiKJcjR5x8ArgbQAKASwHIAEwGsAjAWwPsAPgXwOoCMXcdNArADwJsAvgbwya5z+QC4AZwM4AFEIuESADMB3IpIJFeBvYI8GsArAIYb+Pd1FDeAcTwcOhOKchYczkLe0hTUt26Gvmm9i5VvoXp5KXhdTaz9BAC4P5+FP/+wA5WtQfRMdaAg1YGiNKc6NM8TLEixO0IqK5VF+p1NpD8BmA+gLdY+W3Q/rJRFdBkN4CIAwxCJCFcgIshAJBc6atf3XwGYsuvrBgDPADj/MOc+FsBARG6ppwG4EHuFeyYAAqA3gEuj8Hd0BQnAaK6ppyMQOB8O50BWXhpUF8526yuXUH3rFiAcSoqRb4fG4QSxO1DW4AcDsLnej831fiDyN0k2kaJflmvg4FxPv5EFyTf1znDawxqrlCj5wS4J0wHMReSD1cLiiLAEObqciEj+NrTr66t9fvfhPt+PQURQAeBtAI934NxLAJTv+v59RKLt3YJ8CiIRcjGAGQBmIRJdG002gItZe9vFxO44njXUKtrCOQ5t+SJJX7cSCIUkE3w4YmheT+jBIGMHqToKawxrqr1YU+0V3lte5REpQUmmq3hwbtLvRhYkX9Uvy21TdLbFLQuvEEI+ARAfYb9FwmEJsnn4O3CMhr2iQBGJqnfzy9zSgXJNWwHUIRJJL+msgx0kCcD53Nv2O8i2kdqiubo6Z4ZTX70UvK3VbpBNQ6H5PeFTdIYOloFqjGNTnQ+b6nzkk1U1HpESjMj3DDm1b8ajxxWmPKHofEOSTXwFkdRUvaHOW3QrLEGOLvMBvATgEUSe24kAXj7AcQsAXI5IdHwVIre8QCQfPBLARwDOReSWeTfHAihCJGVx2UHOm7XPMdFEBjCB+7y/hWz7tb5upap894VbWzgHCIeibMp8aEEvXh0mQlcfrzGOpTvasHRHm1MSCEYWJI84tU/GE6N6pvxP0djqJLv4KoDPADRFz2uL7oglyNFlKYAvAaxBJFJdiwMv/twO4A0Ad2Pvoh4QWZCbCmA1InnifaPqpQAmY++i3uf7/G4mImVvEoC/7LIdDUbxgP82CMLFbEeFrnz7mUebPR3c22aL0vnjAqG4n769NRSVa0HVORZVtGJRRavLJlKMKkg+9rR+GYNG5CU/q+hsrtsmPoxISslaTbfYD6vKIvq4EcnfOgHMAfBbRBb3joSTAdyFSMRtNBTAOdznvZ+raj/l8/fs6ozvKK+vNcF0bHC9/hmbvFWnP2xuNMyGXaQ4pU86v3RED79LFupcNvHfAD4AEDbMqEXCYUXI0edlRHK4dkSqKI5UjM3CyXX9eoRDf2P1tUnhd15J0ub+BDA91n4ZDs3KoavnbjTURkhj+G5jA5m2scF9TEGy+7IRPSYXZzifppQ8JQv0OVhVGhawImQLIIeHQ38Ex+/1tStI+L3XXPq6VbH2yTRIajrcb3+JiW+uMd12YaoDFw7LCY4rTic64584ZeFRAOtNd8QibrAE+eilkPt9D0EUL1JnfAfloyl2VlUZa59MRxgyAuL9/2UXfrA5Zo22PHYRZw/K0s4fkqMCWOq2iXcgso5gcZRhpSyOPjJ4MPAvEDJJmfqRqHzyjsS9R++mM5pfiDYltlFJe0jD+8urxY9X1ohnDsgce82x+QsJyJdOWbgLwM5Y+mZhLpYgHz24uBK+B5zfpc74joanvGjnrc2x9inm0J5FrDIYH21oNcbx1fp6OqO0yXHZiNwLzhmcfS6AyTZReBBAe6z9szAeK2XR/aGcsSsRDj+tLV9kD738lJPXWEHXbhyPv6hPJfnCG4vjL12T4ZIx6biC4PG9UlRJoH8VKHkZgBprvyyMwxLk7s0Y7ve9yupre4aeftitr7fSkr/E9d63/OHlbWTR9tZYu3JQeqc78bsTC/29052tDlm4DZFadevC7YZYgtw9SeIB/1Nc0y4PP/8fh/rTdySqLSy7C1RA0jcLcPnbq+BT4r8F8siCZNxyYqHf4xDXuGTxCkR/R6ZFjImL3JlFVDmNBwNl6vxZV/iuPdepzvjWEuODQLJzwRUlIcQYAJZXtuG3H65xfbqqdnRI1dfrjN+ESJc/i26CJcjdBw8P+N9kbS1fBh64Jyv0+H0O+M1o+Ja4CPk9EQorCbXzhXHgw5XV4p1fbHBVtYX+51e0WQDyY+2XRXSwBLl7cDoPBreq83661Hft+U592cJY+5MQ0PxCNKmJGWBubw7itk/Wub5YUzcmrOmbGOfXwYqWEx5LkBObZB7wv81amz8PPHB3RuiJfzoQsKLijkKLSvTtXr3LXd5ijc443lteJd31xUZXTXv4Ob+iT0dkGKxFgmIJcuJyDA8Gt6hzZ1zsu86KirsCLeqDrY0daVMd35Q3BXDrR2tdX6+rGxfW9C2M8yti7ZNF17AEOQHhun49DwbmBv/7QGboP/+yI5D4ohILaI88YX2tN9ZuRAWNcby1dKd0z9RN7ma/+mpQ1Z+HtfEr4bAEObGQeTDwKm9ufM5/x/VObfYPVs6wq9jtIE43Ntd3rxRPWaMfv/94rbO0wX9dQNHnAEiPtU8WHccS5MShBw/4l+jrVl3hu/FSJ6vYGmt/EhraowB6KMS1xKh46xQ+Rcffvt7k/H5T/ciQqq8HMCTWPll0DOuWJjEYx0PBqeGP33Yr774qHZV1xU43hJK+IFm5IMkpIJINsMkgkgzIMiDZQEQRCIfA2lrAm5vAmhvAGxvAGmqB1pafnY7mFyKgaDq66TXAOPDqwkq5tCGQdcf4XotkkV5LCfk01n5ZHBprp16cw1XlDijqo8GH/uLQli6ItTvGIYgQho2EOGwUaHFfTnN6aMTlIsRmp7DZKQQB8LUB4RCDqnJoKriqcKhhQFUBJUzAGeBwcTjdhDhcBHYngc1OINsAKgBqGAgFGff5GBclwetKxQsLKsnKqjb4E2RzSFcoyXDiX2f1C9hF+oxdEv4GoPv+sQmOJcjxC+Gh4JO8pfkm/z23uHhtVaz9iSrC6BMhnfRrCH366TQ9k8CdRNHeCl5bqaO+CryhRkBzPXhzPdDcEBHjI4EKQHIqkJ4NkpELOuEShNJyOeeAXaJE0zlvCSr6+hqfOHdrE5buaOtWzSKS7SL+eWZff36KY6FTFi5C9+geNxzASgBnIjKDMuGxBDk+EXgw8CarqbogcNfNru7Qr5j2HQD5vMsgDj1GJ2kZAsJBzrdu0PmWNSLfUQZUbTN1gjX9xwtsI0+hlS1hEABum4AUp4R0l6SlOCVBEijxhjR9S4Nf+GlLI+ZvawZL8EtFpAS3ji0MjStO3+mUhRNg7tgoEYAW5XM+BuAEAOUArovyuWOCJcjxh40H/J/q5aWnBO69zYlQMNb+dA1CIE04F/LZF+o0vyeBJFG+frnOV84TeNl6oC22vZiFpz7DvO2+g6YqZIHsFmiW7bERkRJS0x7Wpm9uEL9cVwdFT9zr5trR+eq5g7OrHBFRronSaf8B4GpERL4SwHJEhvKuAjAWwPsAPgXwOoAM7J22vgPAmwC+BvDJrnP5EBkWfDKABwB4sXfa+q2IpFwIgK0Afg1gLoDeAMz7RDeIbrmgkcC4ecA/TVuzYkTwgbudUBOv9a14+jmwnXcpoz2LKMJBzlfMhf7d2xRbNwCMxceuOJcHIOSQeWNF56j3Kqj3KnRjrR8um4DsJFm4eHgPdu2xBbTBF2bfbWigX6ytQaJVary1dKek6Czv4uG5Sx2ScDyOfCrJaAAXARgGQEJksO/yXb+TAYza9f1XiAz+nQLgBgDPADj/MOc+FpGhwdsRSUtciIhwnwBgGyKiPAvA2YgIfkJjCXL8kMYD/pnq/Fl9Q//5lz2Rpj2TXiWw3/B7Lg49BggHweZ+Q/QPngFqKwmA+BDhfcnOA1MUhk6UffrDOsrDQVLeGCSySJCdZKMXD8/l14zOIxXNQX3Kkkphxc7ESct+sKJaUnSWfdXIvGX2iChXHMHpTkSkR3No19dX+/zuw32+H4OIoALA2wAe78C5lyCSkgAiUfZYRAT5CgAf7Pr5BwCuhSXIFlEilwf885RpU/PDL/xXjrUzHUWacC5sV96gkcxska9fpusvPSCiLP6HJpOsPKiMdDnnoGgclS0hVLaEiNsmoCDVjvvP6Iugyti0TfX0naVV0BIg4fzZ6lpR1XnG9cfmL7FLwgkAygww05FtpBr2fjhSRKLq3fzyieSIfMhfBOA8AH9DJH2RDiAJkfRGwmIJcuzJ5MHAkvBHb2Ur774qxdqZwyJJsN30R8i/OpOD6WAzpwpswY+Ary1h3kskp4D7IUZlU5QvrGNjrV/YVOdHdpKN/rpvJj9/SA4WVbTg+XkVpD0U33c6X62rE1Sdpd00pudiuyScCGBTF04zH8BLAB5BRFMmAnj5AMctAHA5ItHxVYjkfoFIdD4SwEcAzkUk7bGbYwEUIZKyuGzXeU8DsAbAhH2OmwLgAgBvdcH/uCFhLqJuShIP+GcrUz/Minsxtjtgv/0vXBp3KnjtDs7efILyTauQkJtUCnrr3rAe1fc+50Btexi17WHisYvom+nW377mGGFznY89ObOc1nrD0TQXVaZtbBBUnafeOrZwoV0SxgNY28lTLAXwJSIiWbfr8QcqDbodwBsA7sbeRT0AeAWRlMdqRPLE+0bVSwFMxt5Fvc8BvLbr3335FMAtSHBBtqosYoeN+/0z1bnTR4T++4A91s4cFEGE/bZ7uHTaGUBDDWOfvirw0s5er/GF8O83+OqAjdS2K4baccoUxZkuPcdjE9bVePkj00uJN44j5vHFafwPJxW12yXhWABbOvlwNyLVEU4AcwD8FpHFvSPhZAB3IRJxHxVYEXJsEHjA/6m2dsWw0P8ejFsxtk26FfJ5l3G0NXH26qOUb1wRfwt0nYVQICWNNDe0HP7YIySgMKyt8gpl9X70yXLxd64eQaZvacTzcysQj1Vzc7Y2E4ckJN10Qs/ZDkkYjki021FeRqQawo5I+uBIxfioxIqQzYfwYOA1fVvZpYG7bnZBNTZK6wri2FPh+ONfGcJBwj59lfC1i2PtUvRIy4LwjxfwfZn5az8eu4hBPdzMJlLy1tKdZOrazuideVwzOk89d3BOmVMWjkUk6rUwCUuQTYaHgg+x+to/+G+/zhV3fYxT0+B66FmNFvQU2WevcT7/+243IJUMGAE+6f/06dtDMYv2czw2DMh1I6Bo+oPflwmb4rAF6J2n9A6N6ZW6xCkLvwKQeAXxCYrVftNEuKLcxr3tfwz8+bdxJ8by5ZOQ9NZUEJtI9ftuBJ83rduJMQAgKw9hCDH9w2rbw5i9pQmNPpU8dt4A3HlKUdw90U/P3mYvbfCPCir6S7Bm9ZmGJcjmcSqU8OP+O2908tbYbhveF5KVC9cbn+m2y64BXzEbJKsHgRa/FQFHCulRqPuYEPO1E8aBrQ0BurC8Bcf2TMX7141gfTOcsXZrDzrj+Pf3W5xtIfUyVWe3x9qfowVLkM0hn4eCnwUeuNvBa6tj7csepIuvhvuNT0HqthH2yv3g878GaioYvfm++C0FOFLyitAeinaPm67jD+tYsLWF1LUpeOKCQbhjfK+4iZaDKsPfvt7sDGvsUQCnx9qfowFLkI1H5gH/t+H3X3fpK5fG2pcIkgzXM2/q9utuBpv6MvhPH1NokTQhm/auQIr6Cxg4MsZOGgPJzKUtgfhKiXIAWxsDdFF5C07snYZ3rxmh9/DYYu0WAKDWG8YD07Y4Qqr+KYABsfanu2MJssHwYGCyvn51sfL+GzG/TQYA2rsvkj74jlGPi7DX/w1U/GJjlq8VfO6XXLj+zwy0m709RAlwJpFWf3wJ8m58YR3zy1pIW1DF85cO4eOL02LtEgBgfa0PLy/Y4Qoo+jcAHLH2pzvTza64+IIzdiX3+64KPHSvMx4WyOQLr4Tr2TfB184De/9JCv+Bm+HwlbMJgn7Qq+6IvdPRJDMXXAnzeG7OxgFsrPUL66t9+PMpvXHriYVx8Rp8v6mBrK5qzwmq+lOx9qU7YwmycQyGEn4l8Lc7nPDHvqzJ/rdHuG3SLWCfPg++4Dt6yA8IzsG+eYOSUeMJcnua56TBkOx86Loez3q8h9r2MFm0rRWn9svAMxcNYrIQ+0KHp2aVO8IquxqRVpcWBmAJsjF4eDDwXeiZRxysvDS2nsgyXK98pEkjRoK99Siws4MNvRqqwVfN0+kt93efBb6sPB6EGHtl6yC7UxjJNhFvXz2C5STFthGgT9Hx8I+lzpCqvwsgJ6bOdFMsQTYA7ve/ps7+MUP98ZvYXvyeFLjf/lKnMiVsyiMEbU2dejif95VA7A5KzrjcIAfNheQVMa9GEuo9rzGOZTvaaYNPwQuXDuVDc5Ni6s/6Wh+mrq1z+hXtQ1j6EXWsJzT6nMXDwbNCzz0e0x4VJL8QSVM+Z6itAHv/fwLCXRgFpalg375F6IRLONye6DtpNj0KSVswPhf0DsfmOj8ta/Dzf0/sh5NLYrvY9+7yKqmuPTxS1dkfY+pIN8TaOh1dPDwYLA/c/6f0WJa40eJ+cD31GufLZ3K+4Jsj/tAl5/xGh90N9vifOrzdWJj8JVC1PbLHizHoH70IlG/c39dzrwU57lTA4YZ+58VH6uqhfXryYyzYGYI3nJhZmIJUO++X7SIcwDOztuGnss7d8USTnCQbJl8yOOiQhDGItM20iAJWhBxFeMD/jDrnx5jWG9MBQ+B6+jXOF38fFTEGAD79Q4HkFggYdVLHH6Qo0B+5HfrDt4NNnQLhvAMPBWZrFkN/7E/RcPPQONyAKCWsGOd4bLxftot8tb4O0zY14I6Ti3DWgKyY+VPrDeO5uRX2oKpPRaTlpkUUsAQ5epzMVfWS0PP/jVmqgg4aBtcTL3K+aBrnS36M3msb9IH/9AkXLr+VQexCObXdCR44SKVJxWag3fhWmMjOA1fCCVFh8UvSXRIG5yWR6aUNqPaGsaM1iK821OGmE3vinMHZMfNrZmkTWVHZlhVS9Ydi5kQ3wxLk6ODiwcB7oSf+6cTBhMdgaEl/uB57nvNF33G+ZHrUX1e+bhFBawPoDX/pmKjJMoR7n4Vw34ugV98B9u0Hh3+MgZCsHlAYEk6QPXYRIwo8mL+tCVub9q4D1LSH8fWGOvzm+AJM6J8ZM/9emLfdAeBmAP1i5kQ3whLkKMCDgce0pQtStMVzD3+wAZD8nnD979VdkXH0xXg37JsplAwaSVHU//AH705ZPPA76JPvg3DdnUa51SFIdgEPQIqL3ZIdxSkLGN0rGSur27Gudv8P+pr2MH7c0oBbxhbihKLUGHgItARVvLOsSvYr2iuwusIdMZYgHznHQ9dvCD39SGy2lCanwj35Lc6X/xTdNMWBaG0AX/wDE276a+cizW2bALcHcCcb5FgHiMzRi9rpspJknDEoEy75wOucI3sm44TiVJxYnIqBue5On98mUhxXlIItDX6+ZEfrQY/b1hzE3PJmfvdpxeif7eq0nWjw5bo6wRfWjwFwTkwc6EZYgnxkEO73vR589jEHbz/4RWMYkgz3Kx8wXr6O8wXfmvJa8sU/UIATcuGNHX9Qdj5AKeCP3YR2klNAW4PR6/KWm2xDs19FbvKBmwCt2tmOBVtbMH9rC2SRIqcTzYIkgeC4ohRe2x5is7Y2HTbq3FjvI8srW/WHzu7Pc2PQlEhnHM/M3uYKqvpLiIxwsugiliAfGRezxvoCbea0mBh3vfS+Ttobwb9/z7zXkelg37xJ6PizgLRDrPLvziHf+yyE3/wf2Fv/A3Z1kRDufXbPYfSCSRAemgLINggPTQE9+8ro+0wIkJJOm6LUVEigQKpTwrpq70EFWWeRclICgHbiRp4SYHRhCvOFVfb1xvoOv64rqtqFzQ0+9vSFg9jBonYjWVXVjnU1Xo+isb+YbrwbYdUhdx2JB/zbA//8c24sytwc9/+HiYMGETblUQLV/IbyZMKVOjLzwf59a/wPPk1Jh3D/y1Gbo5ebbEO6S8K6ah+OK0rBxhrfAXssjypMRrJDRINXwZqqw9smkccwQSD83RVVXXpeJ/TLZG5Z4L95f43pr0uWW8YLlw4J2CVhAIAdZtvvDlgRchfhmnazXrrJEwsxli+8EuKo4yj76NmYiDEA8JmfCSQlQ8D4s2JivzOQrDzomhq1BHJusg01bZHnvbYtfNAoedn2Nszc3ARKCdJd0mHPOzQ/SbfLlH+4qmtiDADTSxupLFJ6/xl9TK8oqfcp+HxNrexXtOfNtt1dsAS5ayRBUx8MPf+E6asotKgPbL+5Dezzl4D2GI6CUkJgP7wH4fxJHPY4Txtm50Hh0XmrSwJBukvG4B5JOKlPGnplOA6ZH2YcqG8PIyvp0LndATkuPdUpkQ9WVgvaEUipzji+3lBPhuUl0/OGmF+j/NHKalHV+CkATjHdeDcgocqA4gUeDv1FWzRXNr2TmyjB9Z8XGF86HdhZFvsP0y2rgGFjGf3tP8Ce+Zuxt8iSDKRmgKRlRXLXSSkgkswh23RIsg7ZpkNVBfi9Mg/6CIIBIOAFb6oDKezLfEyMin/ZHhuqW0NYX7O3DO3YXslIdUrYPYlEoIBIKcIaAwGQmSTjUFNKemc4WG6ynX6wsoqEjkSNd+ENa/h+cz0mHVeAZTtaUdVm3l2UonO8vHCH89axhf9128RjTDPcTbByyJ0nh4dD5b7fXOzgdTWmGnb+71VdSE0m7P0nD93P2EySUkBvuA/6Sw8CG1dE55yuJJCi/iC9B+ikeKAPeUUS7A4bwuFG6FoVCNkKm2MbEUU/gDCA0K5/bQCSuRLOgKZmgLFsENILkpyvCxJ8YT3YFtQc7SFNbvIrCKmdF7/RvZKxrTGARt9egS1Mc8BlE5DikLCgvAWyQDCyMBmURFbzmv0qNtX6cKBXLD/FzvvnuPDJ2hoSrUXH3RxfmMJ6pzlxzdurqJnvFkqAN68a7k93yWcCiE1xfoJiCXIn4QH/a8q0qVeHX/ivqc1ppUuvhf2am8Be/zcONukjVpBjTuHkuF9z/Z4rux61F5SADjteJ6PGB5CaJSEcXAOHczoRxCUAVgGoBLq8044A6AFgCIAhqs7GUkJOC6k6q2kLO+u9ihCLwadZSTKG5nvwzYY67GwLRf38BMDFw3J5Wb0fD/1YZuqmjQn9M/kNxxfMc9vE8WbaTXQsQe4cBTwU3OK78mw797aZZpRk94D79Y/Bpr6y/wy8eIAQ0Ov/yviWdYS983THL/y8ItDxZ4fIMWMZqNAGQfiIyLZPACwEYHQXIBHACTrjF3HOL2Ucnrr2sFDnDdua/KrhNyCpTgkjCz34qbQJpY1+w+y4ZAFXjsjDY9PLsGi7ebXyIiV4+5oRAY9dHAtgpWmGExxLkDsBDwWfVb79/LdmR8eu1z/VScN2wmd8FPu88cHIyge98s/QH74DqKs8+HGSDWTkONDTzvciI1cFFSYTSXoPwGbTfN0fAqAf5/x8jfGrAfSuaAzKO1qCgqpH//pIsgs4rlcKFu1oxepq4+92+me5+ZjCVH7VWyuoYsDfczAuGJrDrjimx3cumzjRNKMJjiXIHSeFh8PVvkkXOHhDnWlGpYuuiqQqXrkfsSpx6yjklIt0FA4Au//G/RfQ7A7Q0y7UyK8u0KDrS4jT/R8A3wEwP1dweAarOvsrJeSC6rYQyhsC9mAX8s0HwiFRjClOxboaL1+4vcW0NMLFQ3P06rYQ/v7NFtPqk+0ixdvXjAg6ZWE4gC1m2U1k4jfiijO4qt6iLZrDzRRjJHlgn3QLZ9PejnsxBnaNfHK6KDnjsr0/lG0gEy7VhYffCpJTz/uC2BxDiNN9EoCvEJ9iDADrJIFeKVDSq0ey/ZmxJWmBQT3cIbt4ZJfLrv4UfFtTwFQxBoAftzQKg3M9wqCczvfV6CohjeHzNbWSX9H+aZrRBMeKkDuGFFQCrfD57Hj9Bap+/6UpRp3PTtEFgYF98VL874bbTa8BoOfeyPX7biBk6PGcXvibEIAZxOG6B8D+I0MSgwyd8b8AuHV7c1Aoq/fLrJOXjUgJxvRO4c1BhX25vj4mr+eo/GTWN9PFr357lWn23TYBU64aHrJLQj9Yu/cOixUhd4wLqgON/N3qmSR825+4+MVPzHbznwDRuFSyOO40CL1LBPbj+4kjxgBQsRHYWcaFf73K6IW/WUscrhOJw3UOEleMAaBRoOQugZKiglT7jLElaX6PveMl/JREtkQHVD1mYgwAK6raqEAJvXZ0nmk2fWEd322op0FV/6tpRhMYK0LuAD4lsGLy6ikj5lUvAwXBcbkjcEXfiayHK4uSZUt5ePJjBPW1UbWZ9Ml0xhdPI3z1vE7d2tI/Pws0Vkf+wxnY9I9A+6+VAAAgAElEQVSA6m0/P0iUQM+9EUjJADgH37oWfM7UI3eaUpDjTtfIcRMUCOJ/CKX/QtdL1eIVwjm/jHG8XNEUtJc1+KVDXUIEwDE9PbpNonh7ede3REeLnCQbzhmYjeveWYX2sDkZo3SnhFevGBaURZoBIGCK0QTF2ql3eIYAvP/CmkjlDgPHwpoVWFizgpakFOLSPmezUW99LrDtFbr2wn8FtmrZERuUL78eIJzwNQs6n2fUVLApj0S+7zUAdPx5YB88td9hbOl0oLIUoALoZXeAFw0Etm3outNp2aDn3+SHO2UlkeSr0H1vTzkh5AOBYFbPNPvbOR7bmFU7213eg9QxD85L0l02kby9vDIu7kZrvWFUtATYX35djL9+vdkUn5oCKrY0+LTBuZ7zAbxnhs1EJS7eJPFMQA3e+dW2GZLO9y+LLWvdjoeXPi/cNP1efKNvJcLDT0P88FtdOv+KrhukFLYrJnH20ydkd7vKLiPbgdABAhJNjYgxADAdvK4SJCml63YK+4Fec08Qqdl3EZtjPLqvGO9LrSTQ050yveX4ohRfcaZzv212/bJdeoZbIh+srKJR2BEdNRZWtNCBOUm0d5p5MxW+XV+f5Atrt5lmMEGxUhaHJlnRlZobp9/raA4dvqjeJsg4teAEflmfs+GkEsTpP5DQy08BwY7fpdluvRvy2PGMvflQlz4s96QsBBFwJ4N9+PSh64JtDtBr/wL20TNAW+fHypMhYxg57VI/keSJAOZ0xeduQJ6ms6+b/Gq/1TvbHYwDvdIdrDjTST5YVU06uwuwKM2JswZk4d0VVWgN/lznRUowoV8mku0SODi2NQexaHvnh8SOK0rTU+wibvl4nSlpFFkgeP+6Y0J2SSgBUGWGzUTEipAPzSWrGzexjogxAIR1Bd9VzCKTfryHPLbyVbJ1zFDd9tl02B5/gdGCwsOfwG6HfNZ5nB3JBpBdKQv2+r/BPnkO9KzrDn4soaATJ4GvmNUFMSYg489TyKmX1BFJHo2jV4wBoEoU6Jh0lzT9uKIUf880Oy/JdNIv1tV2WowBoE+mC9VtIfTNOHAzwVXV7XhvZRU+XFWN3CQbeqZ0LtJNd0pId0okx2MX+mQ6O+1fV1B0jnnlzVxj/FpTDCYoliAfAq/iu2Zm5cJOt9jk4Fhevw53z3tUuHPOQ1iQoXP5lQ8gvfGJLo45+NZ++5/v56ivYnvSCUdK9TbA4QKcB649JROuBG9pAF8+s3PnFUTQ824MkuHjNhLZNgyx3WUXL4REgZ7vtomv9ct2kznlTaj3KZ0+iUQJcpNs+KmsESWZ+7/1NMZRtavvBeNAg1+B29axIDfVIeGs/ln6RUNz0RBQyaIdrey28UWmJVO+39TgUDR2C6xhqAfFEuSDk2QXbMctq1t7RCfZ7q3Cf1e8Kkz64R585ltD+N8fgvjpD7p81Y2ROXO7kW2QxownbNan0buFTMsGCAWC+/dKIGMngtjs4D990rlz2p2gV/7Zj8L+04nNcTyAhug42y1gAiV/4MA9xxemBZI7URq3m6J0J3a0BtEW0hBSdWS6Dl5aKQsUvdIc2Nl66MZEHruICX0z9UuG5SKg6uTv00rxyuIq8s3GRtozxUF7ppqTS95Q60NI1dMAjDLFYAIi/POf/4y1D/HKuZtatk78rmJWVKZGhnUF65o2ky/Kf0SD5qUl487jrqt/C7mwGNqa5cQ26fcQ0lMZX/DtEUUPZOxEkL7DQYaPA+k3AmzGR0BLPQCAXncv+Op5gDsFwgU3AyAgQ08AGT4OYAyoP0SuGQAkGfSKP/mRljWFyPbrAES3X2Q3gRKyQCCkqU+m+9TSRr/UmX4YxxemYkOdD+1hDZJAkOuxo/IAgksAnDkgE1saAtjRGjzguZJsAsb1TtfH906jzQEVT83bQeZVtJLd/SwUncNjF9lpfdL5D5sbTYlaHZJA+2S6BEmgX5lhL9GwFvUOgk8NfDZlwycXfFcx2zAbQ9L74bK+E/UBaSWCxBgw5yvwlbMMs3dEUAp68W0B5BZ+SWT7lcAB2/ta7IPG+L1+Rfv7x6trnOEOlFnYRIrrRuUjpDJwRGazAsBby3bud+ypJelQdY652/afGuOUBRxbkKL3zXQJO1pDbMqyKtoUOHAu22MT8a/Ti/G7j9agztv5FEtnyXLLePGyoT5bpCY5/vsBmIwVIR8YGcArL6x5Vwpq0e9Tu5v6YBN+2rmQSlRESVpv8KL+0IYcpwuhAEVDtWF2uwI5+/oQKei7iNjsF8H41pjdAkrIfIGQ7F6pjsGbGw6/3bpfpgshjWHq+jqsqWnH6up2FKU50RZS4QvvfcqP65kCtyzip7KfL8Q6JIoxvVL100oyaEjj/LkFlXR6aTM5VGOksM6Qk2TTR+Ynk9lbmw2Pkv2KjhOKUkNpLnkVrIZD+2FtDDkwJ9X467SOVlccKacUjNHf2vgZnblzETmjcDy96FcXQTz1QmZbs4hi3leRdEIMIcdN0Ejx4HIi2yfCSlN0Bi4J9I/JDinrzP5Z53y1oe6QJQ19Ml1YufPn7TjLm/zom+HC+KJ0fLi6Gi5ZwKiCFDQHFFw2rAcAYGO9Fy5ZZENyk2idN4wnZlWgqj3c4bWIeRUtwu+OL+AE5tz2zC1vduel2Cc6JOFrE8wlFFbK4gAEtdCrH235ZtLHpd8avujZ29MTj4/7C675/k7sjsYpoTgh9xhc3u8cluNIJ9K2zcCMjwh85jXF30PxYNBzbmgmkm0orPrRriIrGluyqrpt4NLKtsOPn+7oSQWCEXnJbFgPD230K/o7K2qEipau3dE9fGYfPmVxJfl+k/FrtL3TnXj03P5VLlnMN9xYgmFFyPtDCciFC2qWm1KBMmnQxWxu1VIe1EJ7IhrGGeZVL8O86mW0X2pvXNrnbH3Eb/8poKFGF2Z+KmDnVjNci2yHnnhDkEi2s2CJ8ZGgyCI9a0Re8rqa9nDqkY5rkijB0B4edkx+Mm0NqHzy/B0oawoeUXXO/IoWfv6QbP37TQ2Ga8K2pgAISDqAQgDbjbaXSFhlb/sz0qv4pCqf8X2PCQj6phaR6TvmHfRi2txSjn8veVa4ecbf8K1/M5RLboVy8wM6ho8z3Dt6zg1+iOJdABYbbOxooFoS6CUT+mcGnVLXtFOgBMN6ePh1owvQJ8PFX1m0E/+aXi6UNR24yqIzLNreRnOS7aJLNn7jHgewcmebDuB0w40lGJYg/wJFVy+eXbUkKqVuh2Nc3mhoTMeG5rLDHtsQbMar6z4Urpl2J6ZUTKNtY8/g4dsfY+RXlxnSBpQMH8eQnF5KqPBi1E9+9DJDIGTyqX3SO9XxjBJgSG4Sv35UPgZlJ7Epy6pw3w9bhQ310ZvF1xRQUesN61eONKc15+LtrS5vSLvQFGMJhJWy+AUq065YULM8anm+QzGx6DQ2fcd8cPAOr26H9DC+3vYT+WbbTIzOHkou7zeR9bz9ESpWljMy/SOK1ijkAN3JICedHyay7Sp0v/aZMUUS6H25HvsVRWlO57bmQ+syJZF5eMcXphJFY+z9lbXCsqp2w0LYOeUtwln9M/RXFu4wPExeubMNNpGOByDAqtrZgyXIP6eAAJmlLRWGGyIg6OXJI8+tfqtLpUYcHEvqVmNJ3Wpa5CnAxX3O5GNu+Ct4S4MuzvpCOJJWmvT0KwMg5GkAR9CP0+IghGSBXn1KSfq3O5cHnQfaNEIA9M10YUyvVM4Y+Gdr68mC7a3Gi2SVF5cOyxGK0hzY1nzkaZBD0RxQ0RxQ9RyPbRSslNgeLEH+OcdsbdsR5uB2ow2NzzsW7YqPbPce+VrZtvZKPLH8ZSHF5sE5RaeRc867AUQJ6fKy2QKW/Ni5k5UMBQpKWogkP3DEjlkcjNkCIZ+f0Cvtotlbm372XivJcOGEXqmcAPybjY10drl5s/dCGsP6Wp921ag84cEfygy3u3h7i+3sgVlniAK1BHkXVg55HzSmj9rYXGbKFMgJvcbzGZULolpz2Bpux9ubPqdXTfsjXt7yhdAw6kSu/OEJTs64hsPWga5esh10wlUBItuvBmDcjhgLyCK9o3+mS0tzRrJjRWlOXD0yj48rSmMzSpvJ/31bSmeXd76t5pEyb1urODAnyZRa2GU72uSgyi4yw1aiYEXI+xDQguNKWytM6Q/by5OPN9d/YkgUojINP+6Yhx93zCPDMgfg8r4T9b63PijQmu2MTv+Y7hnx9AvImDMVCOKXAGYZ4ZfFz2gmhDxwWknGg6JARIckkJllzeSbTeb0lDgYpY1+OGWBpjtFHGy7dbRYX+uFQxYGAJBgbTgCYAnyz5CoOHRrq/FlkUWeAshUImWtFYbbWt2wEasbNgr57hxcWHIGP+nau8Hbm3Vp7jcCNq/Ye6DNATJiHCOS7f8Md8oCACBQ8qzHLt63tsYnv7W8Oi5WT3UOVLQE2ZkDs+k7y4wtPQ9rDG1BNZjukvsCWG+osQTBSlnsJZuAOOuDnZ+a0VnO7f0rrG3crDMT+/Ps9NXimVVvCtd9fxc+qplPAmdchvBtDzOMPQcgFOSYkzQw9iWOjvFL8UJIEujfXTbBHw9ivJs1NT5ybGGKKS5tbQwAwFAzbCUCliDvZcR2b5UpedOhmf21RbUrYzKB2Kf68VHpt/TqaXfiufUf0urBQ5nyh8c5P+50RmyOf8XCp6MZgZKXS9KdWp7HlNL3DrG53k9yPXZTUidb6n0uVWcjzLCVCFiCvAvG2cgNTaWGz7MhIEixecSV9bG9Q9O5jtlVi3HLT/+gU8tnkCDXN8Eqc4sFQUrJkycVp8bNImp1exiUgBRnGD/eaVtTgAZV/QTDDSUIliDvwqcGxpe2Vhi+IWRIej8E1CDMSI10lBN6HON1y857Y+3H0YpIyZuj8pMh0viYbMQBVLQEtdP7ZRhua1tzAJJABxpuKEGwBHkXIhFGbG0zfkHv2JxhKG2tiJudSX1SeiHTkRYC8H2sfTmK2aEzvnZITucqLofmuvHcBQOQ7T7w1vlzBmbiwQklePKcfp12aHNDQBiQk2T4+7TOq4AS4gKQbrStRMAS5AipIhVTqn31hhvqm1rE1zeVxiR/fCDO6nVKUKLi07C2r8YUpyxMHtc71duZx4zKT0ZZYwCj8j0H/P3aGi8en1XRJX/Km4IkwyWbErJXtYaCAIaYYSvesQQ5wohKX02Am1D1kOVM52ZE4h3luNzhXKRiJyedWhjAZ73THGJSBydI2wSC4nQH3l1Zg5EHEeSKlhDaw12rJd7RGoTLJlIz0ihbGnw2AMMMN5QAWIIcYejm5q2Gb5cmIPDISbS8LT4qy/LduZCoGIQ1Sice8GmMfzU6P7lDUcHQ3CRsqPOj3qfAr+goSInu21fROVoCKkYWJEf1vAeirMFv94W1MYYbSgAsQQag6GrPukCT4XVHfVOLENRCaFd8RpvqEMdkDeKc82mwBpbGBQ5JeG9EXlKH0hYjCzxYvmvc0/Kd7QdNWxwJtd6wPignKern/SU17WEwzksMN5QAWDv1AIR1Jb9d6VT6rkscmz0MFe07dURaDsac43NHeJ2SY2qs/bDYw6yCFLtdpATaISaiOiWKfhku5Hns4JyDEgIO4PN10V0DqfcppFe6gyPSgM4wWoIqKCFZRtpIFCxBBsA5y20LGy/IJSmFfHt7VVzUNolURP/UYjuAGbH2xWIPbYrOtxalOQaUNh68V/KIPA+WVLbh/VW1e372x3E9UZLuQDSmh+ym0a/SAVkuFZFeE4bRGlAhCTTVSBuJgpWyAEAIyWwzIULOcmZotYGGuHjOB6QVI6wr5QCaY+2LxV4kgfxQnO485LblUfkerK7++ft1VZUXo/KTce8pRXt+dv6gLDx4RgkkgeDBM0pwVv/O1RU3B1W4ZMHw96s3rEGixAkrQLSeAAAQiJBmRoRsE2RaH4iPDSEjs4ZoNkH+PNZ+WPwcWaBz+mU6J03bjIMmhZ+et/+i8KwDtOr8Yn09vljf9TRGcyRyNVyQGQeCmh52yWImgBqj7cUzcRGtxRpJkDxmRMh2wUYa4mSH3sC0Er8sSPNj7YfFfizqmeqI/pDELtASVCGLlJixgbA9pKkAso23FN9YggzYKYgY1IxvJWAXbbQhGB8ZgkxnOgVQEWs/LPajWiDgTin2l2ZQZWCcIzfZ8IpQtAY1DkuQLUEGkBnQQmGjjThEOwghcVPylmLz2GG12oxLVJ3X7Z4kEmu8IY33TjO+yVCTXxFgCbIlyAAyfarf2NEIADIdaQioxg6O7Cge2Q3OuQrA+DyNRadhnFfGiyA3B1QW7U0nB6LRp9hgCbIlyAAy28JewzdGpNtTEdaVuNiAkelIh6IrdbH2w+LAiJRsSXPEhyA3+FWSm2x8r+bmgCKFNZZnuKE4xxJkILM51Gb485DuSEFYD8eFIGc508HA46ehhsXPsEvClnSXHBcz5rxhjSSb8OHgV3RoOjvqO75ZggxkNodaDQ8B0mzJCGrxIciZjjRIVCyNtR8WB2V7lluOi4b1GuPELgqGv28Z42AGb0BJBCxBBtwBLWj4GyHZloRQnAhytjNDdYj2slj7YXFQml2yEBdj9nTGQanxvU50DoBbgmwJMqBTQgx/89sEGwJafCzqCYRyWGPX4xnV+P1xHUPnHAIxvhCZcQ5ubVSzngAAOiXG35JRQhHWlbjoYxHWVQrA+KVzi66iZzglx6RRPWLtB7KTZCTbRXL3acWG2slyy6AExvf6jHMsQQb0XRGjsUaYDkmS4iJloeiKCCB+xhxb/BLRJkIozlJjPsXFJoiUMxWqtNFQX3Qxk4AUOI52STq6//oIOjVBkFWmQRbiI0WmMBUa0xwitV7+OEVTmOKrCuyIecSYbstCQNHZ06veMLRl7Mn5x+PmIVcc1X0sACuHDADMHEFWIdP4EGSVadCY3rmJmhZmYjdjnFhHICDQuW54qk2kAgCiGG0n3rEEGVAlKhq+qBfSwnETIatMBePMEWs/LA5KpsbUuLg2CQF0ZrwgC0QAIeSoX2iOixc9xvgdot3wXJ1fDUKiUlws6im6CsaZK9Z+WByUbJWpcZHjp0TgId34wFWkAiiI4T1l4h1LkAGvU3QYHiH7tQBkIT4EOawrYOAxz09aHBjGWa7GlbhowSkRWW8NtxtuZ1eEfNQLsrWqA/ickt1wQW4JtcEtOTslyCk2D347+Ar0Se0FvxpAa7gdL6/9ANX+vW0orhlwAU4tOAFuyYlLvvl9h85b468HBenTub/Awiw4Z4UaM7zfVYeQqIT6QKPhdmyCDJEIfsMNxTmWIAM+p+gwPHKt9tcjSXZ1ys7fj70NMyrn4/HlLwEAijz5SLV5fibIS2pX4+vyn/Dyrx7u8Hl3+mphF235iNwhxcWOMIu9cKCfwuJjfUukEt3pqz38gUdIljM9JAnSUd8O1hJkwGsXbYYLcl2gEYxzuCUXfOrhA4GhGf2hMR3fVcze87Nt7Tv3O25zS3mnfQlqIYS0sOaWxXxYPZHjDUIJ7RvS42VXp0i3e6sNt5PrzFIAVBpuKM6xcsiAzy7YDK2xBAAOjrCu8HR7SoeOL/TkoaytwjB/dvpqVQCDDTNg0VXyOWfQeXykLAQioNJrfHlwpjONA9g/4jjKsAQZqHZLTrtADNdkBLUQ66ggG82G5lKXzvTRsfbDYj+GhlgoLvIVAhHAwaEy46vRUm3JMqwI2RJkAOGwrjRnOtIMN+RV/CTdkdqhY3e0V6MkuZdhvmxuLhf9WvAUwwxYdAnO+cig5jd+ZlIHEIkEjWmG71CRqAibIMsAuj4iu5tgCTIAjesVPdzGT49pDDbTbGdGh45d3bgRkiBiQuH4PT/r5cnHoLToFEdsaa2ATKXhAOKiFM8igs7183yqNy52ENkEO/xqwPBF313TdFpgLTBbggwAIhHW9XBlGW5nW3sl+qT06vCb7qElz2F45kC88qtH8NwpD+C6ARehJdyGZ06+f88xkwZejDdPfwI2Qcabpz+BK/ud26FzNwSbEI40GRrU6T/EwijclNDBfi0+BuHaBQev9Tca/oGd6UiDxnXjVw4TAKvKAoBTcqzLd+coAAwtxl/fVIpf9Tyxwx+CzaFWPLbsxf1+fsesf+35/o0Nn+CNDZ90yZ+ZOxdJZ/U6+UpZkP7apRNYRJuTQnowxMHiYlOIU3RpK7ylhkfr6Y5UEMAaKQYrQt5NWaEn3/A6o3VNW5BiS4YUJ13W5uxcLGtMux5W2iIu0Lk+sV1tjZumTzbBIa6oX2u4nUxHGuyCbYvhhhIAS5AjlPZwZRn+XKhMRVAL8kJPfAzX3dK6DWFd8QAYFmtfLEAJcIlXMX7gbkegoBCIQJbWrjHcVrYzIyQJUoXhhhKA+AjVYs+2FJvHSQkF48auK3gVv16cXCiWtcbHHdpPlQvlib1PvcomyKti7ctRzliNaXKYHX62qUhE5Djz4RRc0LkOjauoCeyEwva2gihy94FIpT3v5wpfWadqm22CA4quMJVrhn9A5LgyFVg1yACsCHk3IYWprWaUvpW1bhcHpBXHfBLEbuZULZYYZ9fCSlvEFJ3rNzeHGzvUga+nuzf8qg9b2tdjq3cT6oLVONCwgUp/BbZ6N2Grd1OnN5rYBQfqAsYv6AFAliMdsAQZgCXIe1B1dVsPl/Glb7OqFmF45kDjd6F0kK1tOxBQg04AI2Pty1FMEgG5oFVpOuz16BLd4JyjRdnb8CekBxHQotuXxyW62fqmUhMa04vIdKY7AGwy2lYiYAnyLgQqbMg1ofRtae0aJMlupMXJjj0A+HHHPHtQC3WsVZxF1OGcX+vXvLrWgSjWJjgQ1AMdOm++qxDFSf2Rac/ptE9uyUOn75jf6cd1lpLkQoS18HYA8VHrF2MsQd6FS3KuLUjKMXzLKgdHY7BFH5rRz2hTHebL8ukiAbkcQK9Y+3IUIjGw++qDNVGtrqj0V6CsfSO2ebfAJbqRInc8HWejdgDgW1q3RdOlAzIgrZgLVJhpuKEEwRLkvawbkFZy+BWVKLCpuUwYlTU0bvLI7YoPX5ZPFwJq8KFY+3IUcnlYDzk7GvWG9RAcwuF3Vms80n+CgaFVae7QY3bjlpJ4Q7DZlPfnsMyBPodotwR5F5Yg72V+oSffYcYg0uk75mN4VvzkkQHg07JpEiHkQgBW43rzoDrXH6wLVnc4OvZrXhBCkSqn7/mZTXDAKf58PXDfZllJUjJCesdjjSQpRV9Zv96UCqz+acUigAVm2EoELEHeizekhTYPSCsx3NDaps2wCzZ0tK+FGfjVAD4r+170q8FHY+3LUcQlKlPS/Jq3Uw/a4SuHW/Kgr2cQSjwDkOPoAY1pKE7qDwAgoOjl7oOSpAEo8QyAytSfLQIeCgICp+gS9+3DbRTZzgyIRAjD6sm9B0uQ98Eu2L8anjnAlEa0dYFGfUzuMfEx630XX2z9QSTAmQAGxtqXowAX4/rk6kBlp3PHGldR6d+GLe3rUda+Edt9W6GwMLZ6I4UKHAxbvZtQ5t2IsvaNqA12vKLMKbqg6Arb1m58J8wBacVQmboEQFxdB7HEEuR9kATxx9E5wzqWzDtCFtasEE7vOS6uulsFtRA+Kv1W9quBx2PtS3eHcfYPr9ruDMRJI6HduKVkvr6pzBRdGJzeL+SWXN+bYStRsAT55yzMc+fYHaLdcEOfln6HbFeGsKsoPm74qny6oDH9VABnxNqXbkwxwO+oCeyMi77H+5Iqp5HPyqaZYmtoRn+FEGLlj/fBEuSfEwppobWD0vsabiioh1Hjq9fH5x0bV7drYV3BY8tedIS08PsAjC/MPvqgOtffqA/VSrsrIeKFyFZsxlc3bjTcll2wIdOZbgew0nBjCYQlyL/AKTq+HJE50JQROt9WzBJ+XTjWDFOdYk3jJnyz7SdnQA1+AGtLdVRhnP1B1ZVjGkN1cddHJsWWzlbUrTPl9e6bWoSQFtoCIHzYg48iLEH+BQIVpo/OHmpKPfK07bORbk8lZjTH7yxvb/xcbgg2H6sx7fZY+9KNGMbBH9rh39qhnhVmQkCQLKfS9zZ/ZYq9gWklTBbk6aYYSyAsQd6fpZmOdFuSZPw1wzjD5pZt/Mxep8TV4h4AaFzHQ0smuzSmPwJrOnU0cOpcn1oTqLQrLC5mmP4Mj5SCgBrUzaiuAICxPUb7bIJsLej9AkuQ90cN6aFlQzL6m2LsrY2fkjN6jadmbEjpLNX+eryw5l1HUAt9CcARa38SGKJzfYpPbc9qVZrjMgWUZsvUZ+1cbMpmpWxnBnLdWRTADDPsJRKWIB8Al+ScekzWIFNyW5tbyuFTAvr4/GPNMNdpZlTOJyvrN+QEtdAbsPLJXYJx9qTKlLN2+ivi8kNNojIcokN4b9NUU+yNzzuW6Uz/BEB8rWrGAZYgHwBK6PfH547QiEn6M33HPOGSPmfFXdpiN/9d8Yqjxl8/MaSFn4Ilyp2Cc3YN5+wPjOt2QuLzcsuwZetbW3foXjW6LTwPxumF4/xOyfGmKcYSjPh8h8SetRIV64aY1JHtwy3fINWWTPqnFptir7OEdQV/nf8fV0u47cawrlgDUTvO6TrXX1rUMI9oTOclSf25RONifukeBCIi1ZYmPLNqiinpioKkXKTakjUAc82wl2hYgnxguEO0P3tmr5NN2bWncQ1rGzfxi/ucGTcd4H6JT/Xj6/IZTgI8qDHtz7H2JwH4tca0z5c3LnH4VC8W1s8RmsNNvDipf6c6rxlNhj1Lr/U3amYt5p2cd7wG4F0AcXtHGEssQT4IlNB3jssZJjhFc9J+k1e/TYdnDhTy3Z1vJm4Gp/cch+sGXoSvKr6GX/U/oDL1/2LtU7zCOb9MY9rU5Y2Lna1K856fr25eTrf7ytErqQ+SpOQYehiBEgFptkzhxTXvmlYT/aueJ4btou0ts+wlGpYgH5xGhWmzxuWNNsVYS7gN65tK2fUDL467KPnsolNx89Ar8SzP12kAACAASURBVNbmd7CwdjGeWfOc06/671OZej+snPLPYFy/XWXqG4sb5jn2FePdlLVvxvrm1ch39UK6LSumUWK6LZO1htq1FQ3rTbFXnFwIh2j3AlhmisEExBLkQ+CWnJMnFp3aud6IR8BTK1+nwzMHCr08+WaZPCwXFE/ADYMuwZsbp2BTy2YAQJvShmfWTHa2hFvvDmmhzwEkxdbLuIDoTH9I0ZVHF9XPcfjUg79taoJVWFq/AJn2HNLD2TMmH8AEBBm2bPrimvdMi45PKRijiFR8E1Z3t4NiCfKhmZbrymL57lxTjLWE27C2cTObNPCSuIiSL+t7Nq4ecB5e2/A6StvKfva7dsWLJ1c95VrbtG5CWA+vx9G9ecSpMe39oB74w8L6Oc6gHjzsA9rUVsyrnUlcYhLp5S5h1ORLMc2Wyb2KT19Yu8IUewQEpxaM0WRBescUgwmKJciHRiOEvH564TjTtlY9ueJVOii9j1CcXGiWyQNydf/zcWmfs/Hy+tdQ3n7g2Woa0/Bh2cf2z8un5iu6sphxdp3JbsYDAzWmrW8I1Z27qH6uqzO78MIshDk10ylAeLGnPxeJOZuDBCIgy55LXlzznmlTawamlUAgtB6AOfmRBMUS5MNgE+SXT+85Vqcm1ZB6VT8W1a7kNw+5Mmb5xRsGXsLPL/41Xlj/ErZ7tx/2+GX1y8kza55ztintz4f18BQAxvcvjT2EcXabxrSlm1rX9VzTvMKh887f2DAwzK+bJbQrbbzEMwB2wfhF5GxHnl4XaNTm1ZiXyj2l4ISQTZBfM81ggmIJ8uHZBKD8mCzz7sifWTmFFHp6kBNzR5pmczc3D76Sn1l0Enl+3YvY6avq8ONqA7X4z8onnaWtZZeEtNAaAKOM8zLmFGhMnePXfI8urJ/jrApUHvF1tKJpCd3p386LkvrCLXqi4eMBsQsOJMupwv2LnjItd+wSHTg5/ziIVJxils1ExRLkDuCWXc+cXXSKOduYAChMwcdbviW/H3YtN6NZ/m7uGH49P63nGDJ5zf+3d+fxUVVnH8B/5y4z986Sfd83EhJ2CERWI6i4VC1atW4IVsGt2qpV20qLtfrWvq/6VlHE1tZCXar1rYBbQUC2sAQQQgiBrITseyaZ9W7vH4OKCjJJJnMn4Xw/n3wyn2Hm3mfC5JmTc895npVotDf1+/luxY03yleLH9Ssy3LKzm0u2fUPjKyayiGKqjyrqMqx2t7qgl0t28wO2X9vi2M9ZeRoVymSLemIMEYNyYWvBFOKuvXkHq3J3joUhz+jy9MKFUVTPgEQmMXOwxjRNHrB0wehHkVqXrThEcHmCVzLnVVzn1YOtJZiVenbQz7X9/DkO7VpcePJisOvoM3pW0PM7yOwAuanXOIuiJ0mM4R5hmO4PwEI2Iean/Gqpi7RNPXpVleL4XhPmehLF2cDY8TosDEINYRBUiV4FDfKe47gTEl8UuRUiJwJRS1bEW6IxJSoaVqXp1Ntdtb77f8+1BCuRRvjceNHPyVKgPZlcITF6sued4QYLDMBHAzISYcxOkL2TY+syv+6OuPigDRA/dKTe15kL0mdPeTL4H6Zf4+aHzuWvFiywi/JGABcigtra9YbXzj0J/OxruO/8iieekVTHgBg9MsJAoMBsEBW5ZoeT9eze9p2hpZ0HvApGQPApMh8dLo7sL15M3a3bkeFrRwG5rsvP0aIg6J9/dbq8nRgZ/NWEsKHkVRzpuqPmioMGMSLyeSlg6sDlowBYE7SNDBgSkCTsU9oQvaRiReXX5N5iRyonXsA0GhvweaTRXho8k+0oSp09JuCB9Rx0dnkxZIV6HB9dyPDYLU52/G38r+bVxxeGVbdU/OMR/E0S6r0PwBy/X4y/wlVNfVnsirX90m9qw917Evc21Zk7pVsPh8gwhgJFRrq7V9fFO2VbPj2ZhGWsEizZqLKVvGN+52qA1ubNjEsw2mZ1tEqRwY35RsrJqiNfS3q1oY9gzpOf92Uc3WfxWBaHtCTDmM0IfuuStW09YEeJa8seROhBqu2IGu+34c1v5/xsDIqPJX86dAK0uXu9vfhv6HR3ohVR/5sfrFkRVhR0+4HHLJzv1N2lmmadi+AiCE9uW8YAIUexf2upEjtNk/3s/vbd8fvbPnc0u5u6/fBLHwIbJ6ecz4uK2Q0anurcKYVGipkbG/ezDpku5YZkqsZmYFdT7BwIQg1RDDLdj0f0N/3yTFjEWqwtgPYEMjzDmd0Drl/chyS84vbNzwiOuWAdHkCAGSEpuCPsx7HYzv+gKqeOr8c89mZjylxlihmRcnLpFf67ry4lbfg6vSrkWxJgktxotfTh7U169Hu8k5p8AyPhTm3IFLwjgTLOsvw8QnfuxUzYJAdNgoXxBXYc8KzOVmVt4icuBLAZgCBmqiPAjBbUqV5mqZd71KcYmnnYXO8KYFYeLN6oGPvgOdvUyzpEFkTjvWcfdmtlQ9BVkgOvugohsCKmBw1DUUtW8/42NywcVqiOZnU9VXDLvu+eZQlHEaF5Gmrj/47YN2kv/Ri4W/7MkJT7gLwTkBPPIzRhNxPdsm59r2Kj6/8V8XHAVtUDwB3jrkRMxOmaHdvfoK4lcHtU3l+zq+VcMHKrChZSexnWSVw/7h7sb9tP3Y1e//EjTfFQ+CMqLHVAvAm5BRrMqp6qsESFkvH3IXN9VtQ3n2s3/EIrIAJUeNxQew0W7w5XvSonlqOcBsNrKEE3q4S1fBPdbAkAHM8iucSDdo8lrCxbc5W10n7CUtdXx3TcerDRuRMuGXUQmxv2gS3OrA+BRHGKGSGZKO47exd7pPNqcgIyYamqSAgMLBGdHs6Udy264yPT7GkIyc0F42Oeq3b0+HTHFaaJUvpdPZq9275TUCbqk6KHoNfTr3npIkX0wEExc7T4YAm5P4bY5ecxYsCPEoGgD/P+y+lrLMCL3zx1wF9GDBg8L+FyxQTb2RePrySOOUzb/HNCs3EpckX45XSVT4f+5r0q9DsaMGelr0DCe0rHOGQZElCYeIcLSc8G7IqOwysgZNUqYoAZQxh2znCtRJCegB8+4sDEHbqK1zRlGRJlbKhIYNl2GRAMzU5mqT6vpOWJkcj6XC1QztLWYXrM25SOtxtpLr3+ID/zC+ImYUGex3q7d6/aiy8FRzhvzOPDOCcI+QvRRmjMTFyqtbpbtNaXI3fG1uEMVqNNMbgtk8fYhwBfq+eGh0vAfB2QE88zAVdK/Jh4AiATxdkXnrVW8fWBfTnt2zXc+xLFz2p7Wk+hKKm/f16LgMGK+YuV1hCyIqSV8j3rRSIM8Wi3u77phCBFZAXkYvtjTv7FdOZyJqM2t5aAHNIRc9xZXvT52YDY0SkEJkXYgjNMzAGGFgDBFbwGFlBMrJGRWAFzcAYoGoq3IobLsXFuBQX1yf1Cn1SL+mT+tAn9cLmvSjn00TsgbZidk5CIap7jw/4tRxsL8bosLFIt2ZB1VQ4ZQfKe45geswc7GrdNqBjtrvbUNS6lVwQM1szsIJSb69hz/ShYmQExIoJzBM7n0Ogk/HE6DzEmaK7ALwb0BOPADQhD4CZFx+5Nuuyyz+q2cL1eAJWDA7NjnasPPQP8vPJd6BuawPq+5p9eh4HBi/Pe0pRNIm8UvoaM9gpj9MxYHBrzs3Y0ViETrf/VmkkmOPlgx0HOADwqG40ORrR5Gg8/SGGU19Doqq3ErNxoRotxDBtroFtonCrbhzq/O4H55mSsUtxnnN0/CWHbMe2xs+YGXGFSoY1W63tq2ROvyjIgEGKJRNrKzficEf/p5AGa3He9X0mXnwMdKqi3+gqi4Gp1qCtvmn01QFphHq6zfW7sKmuSHt6xiOw8OZzPt7AGPDqxc8oHtVFVpau8ikZNztakGRO9CmeH2VdizZnO7Y37fDp8b4y82a2zdni12P2V7Wtmkm1ZAZlUpEhY1vzZ6xbcWtZIbna6eubky3pWkNfi/rXsvcCHtf0+MmIN8d0gI6OB4Qm5AESOWHZJSmzlFhTVMDP/erhN0mTvVVdfsGDKkvOPp0sMAasmvd7pU+ykVWlf2Yk1bcmv5U9VeAYDgWxX3fCjjfFIT0k7RuPuyzlUgisgHU16wf0Os4mSogES1jS7RnapXjnsqdlF8IM4WwgCv4M1J62nWyrswWZ1tEwcWbECgkq0Tjt4W3PBPx3W+QE/HTCQoeJFxaCjo4HhF2+fLneMQxXdkVTxBgxMn9H477A1E08zeaTReSG7B9oaaFJ2u7mL75zxd3ECXj14qeVdlcbef3o35j+ViI72lWOmfEzcEXq5bggrgDJlkSUdBzG0jFLsLtlD0INoVicezsAgmmxUzE97gKoUNFgbzznsc9lRtwMhBlDlPLuMr8kFZE14cKEi1AQOx3ZoTlIs2agzdUCt/L1HzhXpPwAEyInYUz4eEQaI3Gyrw6yJiPdmqEIrIBOd3vQdkZpdTUTTVOREZINgTWR+7YsJ7YATqV96c4xN7gzw1LX8iz/fMBPPkLQVRaDY3XJ7trlu/83orRj4Bd/BirEYMFr857R3j62HmurN36VMCy8CSvn/l5ttDdofz+2hlW14dVP8u4xd2m9sk3b27rLLwn5h2nX4VhPOY52edcERxgjYWANaHZ8XUCJZ3h8+RfEJUmXodpWiSpbJVLMqbg4+VJsadxw1hUZwSDSGI2Jkfl44cDr2NowuJUuA5EZmoJnZz1uEzhjJgD/7L8/D9Epi8HpFTjjol9MWeIwsoFv727z9OGJXc+R23IXkFkJUzXAm6RXzXtares7of29fPglYwCINkWrrc5mv7w3E0yJUDX1q2QMAJ3ujm8kYwBfJWMGDNjTal/X2U9AURU1RgzO5rMAEMKHYmJkPl4vfVeXZMyA4KHJd9oNLP8gaDIeFJqQB2+9yAmfLM77UcAv8AFAZfcJvHDgdfxs0mJycfJMvDrv92plT6X2j2Nvseow7bRu5sxsq58u6EUIkfB1lcQVKVdhYc5ieFQJ1baqr+6v6Klg0iwZQfnDNLEm5EdfgHePf4T1NZt0ieHKjLlqlBhxlCEMrXc8SDQh+4GJF5dcnDLLmReRpcv5dzbtx2ul7+Ce8begwd5A3ql494xrU4eDdGsaZE2GQ3YE/Nwf163HmuNvgCUsEk5bZbK3bResfAhj4s69qiWQBFbE1JiZ+LR2O946tk6XGCKFMCzMvdZt5sXbQJuXDhpNyP7RKXDGRY/mL7XrMXUBABtObMNrpe8gIySDZIZm6BKDP4yLGod2Z6vfrtB3uTsRLfheI1/RFNT21iDNmv7VfbIqo93VriSb04Jm5YCFs2J6zBxsqduNVYff0i2Oe8ff5iAgL8LbWYcaJJqQ/WetiRM33p57rS5TFwDwnxPb8MqhNViceztGhY7SK4xBSbemqg32Br+9Lxvs9WAYFrlheV/dF2GMRJzp607iHOFh4kwAvN2RUy2p6P5W9bu9rbvZJHMyS4LgVybMEI6CmJn4sGYzXi5Zo1sc+THjMD56dI/AGZ/ULYgRhu7U8yMTL951aeqcim0NxcbyrqpzP2EIbDpZBElV8OCkRXi/6n3tQNvBoF2udSbhQjgOdR7wa8wbTn6MGbGzMSFqMhRVQa9kQ1HLDlyXcSPer/4neIbD/OQrwBIWBASNjgaUdZV+4xiNjgZ4VEmJE+PZJqfv28r9LUqIwYSIKXiv4mPtzfK1uv3fGlkDHpy02CFywu0AzlwUheo3uuzN/65tc3SuWbrpVyaPjxsxhsLEqDw8UXA/NtdvVjc3fK7/sM4HHDg8Pf13WH38r/Co/tve7S8FMdORHpKh7m7drsvPM8GUpOWGjSNvlq/V3qv4WNcP2jvG3OCZnzrnYzMvLtAzjpFmWPyiDjP/Z+LFz27LXaBrRjnYXobHdzyLwsRCcl3mAmWoOo74U27EaDgVpxaMyRgA9rUWw8xZGDNnCfi5Uy0Zam7YOPLyoTXQOxnnx4zDFWmFdjMv3q1nHCMRTchDwMyLd16eVujMCdf34lplzwk88PmTZGzEWHJH7iKFY4J7hiovMhctjuaguXD2bQpktDlb1RRLekBjzA7NUzKso8iyouexsc6/NUP6K84UjUfzlzoFzngVAH2LjYxANCEPjTaBM971WP7ddpEbWNsdf2l2tOEnGx9nQg1heHjiz7QoIVLXeL5PiiVZaXI0BPWnxu6WIibBlMQy31NDxF9YwmJCxBQ1Vohn7t/yW6JH5bbTGVkDnpz+czvPcI8DGHytVeo7aEIeOu9ZDeZ3fz31Pgej83SBQ3ZiyaZfs0c7arSfT3wQ4yLH6hrP2YQYQkirc2ClLgOl1dUCt+JS4sSEIT2PhbNiZmyhJqtEW7zhUdJo1//n8rNJdzjDjaGf8Cz/kt6xjFQ0IQ8hkROWZoenl9w59kbdlsKd7o/7VzGrSt7Cj7NuwIL0a5TvqxQXaGbOBANrYDrcwb/z9mhXGZtmzRyynXuJpmStIGYWPj+5F3dveoK1n6WzSyBdlTFPmRI7rsHEC7eDbgAZMjQhDy3JxItXXpI6u/3S1NlBsfV2Q90O3P/5cuRG5OKB8fer4cYwvUMCAIyPHA+bp0cdDrU3vmjfD5EVGCsf6tfjcoTHxIgpSnZoHv6reCVeLlkTFFdi8yKycHvudQ4TJ8wHEPgtlOcRmpCHXqfICXOXjL3JPi4yR+9YAABN9lYs+s+jbH1vKx6Z9BBmxE3X9F6FkROejSZH07AYealQ0exoVlMt/tu5F2mMwuy4uXDJKhZveJTsaT7or0MPSoQQhmUFDzgFzngjvM1mqSFEE3JgHBc444InCu53xpmi9Y4FgDepPLX3Jeb5A69jfsql2gPj71P1vOCXYI6Xmx1NwTOHcg67W3YycWIiy5LBXYNkCYu8sPHqhMh8vFH2Pu7b8ls2kG3Bvg9HWPym4AG7geX/G8AnesdzPqAJOXA2GVjDI0/PfMRh4oKnA8XOxv249ZOfM/W9bXho4s9wUeKFKqPD2yIYWjb1R4e7A07ZocSbEgc8qo8WYjEr9iIoKotF//kF1lV/5s8QB23JuJvcCeaY3UbWQLdGBwjtGBJALGGKWcKkjovKzt1Sv5sPlopsKlRsbywmX7SW4eacBdr0uALSYG9CoFooRQmRmBU/k+xqGV4rqRjCMDlhuajrq+nXfE8oH4ZJUVPVeDERr5e+R148+AbxZ+NZf7gkZZb2o1GXt5p4sRB0a3TA0IQcYDzDfWrlzfMjxbDYfS2Hg2rNbYerGx9UbSRWgxU351yH1JBUta63jjiVoW0j7++WTYHS4mxGfvQ0dLrbiduHn5HImjA2YoKUFZLDFjcfxiNbnybHe2qHPtB+ujCxQLt3wm09IifMAVCvdzznE1rLQh9hTtl16K9H3kv6pDY460yInIjH8peo46NGM/ta9yv/qdvI2mX7kJzL3y2bAml+0hWakTOoJZ0Hzjr/zTM8Mq05SpI5ha21NUh/3L+Kb+hrDmSYPpudMFV7cNJim8AZZwI4cs4nUH5FE7J+slyye9/Lh1aHbKnfHRTLm84k1ZqIR/OXKnHmaHZnU5G6vXE70yv1+fUcy6b+StndspOt7a3x63EDIdQQiuszbsLWpo2QtG8Wk2LAIMWSrmWGZJNme5vy3IG/sBXdtfoE6oMZ8VO0hyb/xCZwxtkADusdz/mIJmR95blk9/a/lP4z9NMTW4N6hUF2eAbuGXeLmhaSyBzqKFE31W9m2pz+2cTxh+lP4+3KNbp0CfGHm7JuVRodJ5kTp+aSOcIjyZyspVuzSLe7V33hwN+Ywx3BXb99evwkPDz5LpvAGecAOKR3POcrmpD1l+WS3UVryv8dsbZqY1AnZQCINUXh3vG3auOickiNrVbdePIzprb3xICPl2ZNw11jFuONY6/7McrAygsfi/zoqdr+9j0kzZqpxIuJbIujTflz6T/Z4pYSvcM7p2lxE/DolKW9AmcsBHBA73jOZzQhB4dUp+wqer/ik+h3jn/I6x2ML0ROxNKxN2Fm4hTNLtlR1FyEA20HSV8/pzOuTrsKGaEpykd164P+w+hMWMIizZqBwoS5AICqnjrl5YOr2WrbSZ0j801+7Hg8nn93n8AZLwKwT+94znc0IQePeKfsKvqoZkvCG2X/0qcx3wAQEFybNR9XpBfKEUIYV2s7oexq3s0e6SyDop17I9uDE+5XG+315GCHf7uEDCUCgjhTPLJCstWs0FFMn2RXt9TvYd4qXwe3EhRlS3wyOXoMfjXtvj6BM14MYI/e8VA0IQebaIfs2r75ZFHaqyVvGvUOpr/CjaH4cc5VmB4/UTXzJuZoZ7l6uKOUOdZ9HK6zLAtbPm2Z+nnjJqbBHtyrqxgwSLQkISskW0mzprOSKqmH2sqZN8vX4URvcMd+JhOic7Fs2k/tAme8FECR3vFQXjQhB58wh+TcWtR0IPvFL/4mqEGyeaS/ksxxWJA1H5NjxyjhxlC22dGiHGovYY52lZNmh3fJV7C3bAozhCHelIBkS6qSZElmJUVSj3RU4t2Kj5ijnZV6hzdgU2LG4pdT77ULnPEyAPpWvKe+gSbk4GR1SM7PDrSWjvvj/tfE4VAB7ftYeTOuybwUsxKmSFFiOAeA1PWdVGxuGzsmMg/vVP5D94TMEAYRxgjEmRKQbEmR48R4DoDW6epSStqPcx9Vb0aVrU7XGP3hqox5yu251/UJnPEK0JFx0KEJOXiJDsn5yZHOiml/KF4pBtvW2sHICk1FYdIFmBidp8SYIoiRNTIuxaW1u9qUTncHa/P0EJvHBptkg13qgz+3mPMMjxA+FOHGcEQYI7UoMUYJN4YzJs7EuBW31ubsUkvbj7Fb6/fiSOdxv51Xbyxhcc/4W9wXJhU0iZxwEYBavWOivosm5OBmdEjOtzpc3fN/u+sFc6uzQ+94hgQHBpNix2JyzFhkhKYo0WKYJnIiMbIGhmM44pKdcCkuza16NI/iVl2KEy7ZxbhVNyOrMhjCgICAEAKGMGDAgCWsJnKiKnImTWRFRuRERmAFAAQuxa3ZPH1qi72dOdHbQI531eBAayl6paHZiag3MydiWcEDjozQ5GITL14NwKZ3TNSZ0YQc/IhHkR6SVOmpZ4pfEQ+1HdU7noDiGQ4p1kQkWmIQLUYiSgxHuDEMoUaLxhEOhBCiaioUTYWiKVA1DYqqQNEUuGQXbB47muytqLGdRE3PSQRD941ASjDH4qkZDzlCDJY1IifcD0DWOybq7GhCHj4KXbL7g3eOrzf/q+KToCpKRAWnC+Im4eEpdzo5hnuYZ7iVesdDnRtNyMNLskNyflrSXp7+3IG/iE55aKuwUcMTQxjcnnut58r0uTaBM14JYK/eMVG+oQl5+BEcknOlU3bd8NTel0yV3QPftkyNPCEGC56Ydr8jLSSp5NR8cZveMVG+owl5+PqRS3b/7c3yD8QPqjaywVLsntLPhOhc/GLKEofAGl8VOONjoPPFww5NyMNbmkNyrqvors18dt+rJpvHv2UxqeHBypuxdPzNroK4ib0iJywE8KneMVEDQxPy8Me7ZPezkiovXXFotWlnI60Pcz6ZnTAV901c6GQJs1rkhEcA0E/lYYwm5JFjtkNy/r3GVh/z0sE3zPVB2pGC8o8oIRwPTlrsyAnPbDXxwk0AdusdEzV4NCGPLLykyj9VNfWpD6s3c28fW2dwDaPqY9S5ERBckV6oLsr7kZshzH8bWcPTAEbONs7zHE3II1O8XXK+JKvy5a8cWmPa2bRf73goP0iyxOMXU+6yx5tjKk28eDOAMr1jovyLJuSRbY5Dcr5BpzGGN46wuCH7SunarMs8HMM+zjHcKwCGd8Up6oxoQh75eEmVH1A19XcfVm/i3jq2zjCSChWNZAxhcGFiARbmXWs3ceIeMy8uAjA8WpFQA0IT8vkj3i45V8iqfNmqw2+ZdjQUY7jWWh7pGMLgoqTpWJi7wC5wxmNm3vQLAFsA+h820tGEfP650O7d6ZfyzrH1ps0ni4hHlc79LGrIsYTF3OQZ2m25P3QYWEOZxZuIt+odFxU4NCGfnwiAOX2SYzkBCv5duYH/sGYz1zdCy08GO46wmJcyU7t19A+dBpY/fGpEvF3vuKjAowmZGuOQnMtYwl6z8eQO8n8VnxpHat3lYMMxHC5JmaXdOvoaJ8dwX5h502MAduodF6UfmpCpLyW6ZPfDhJCl+1oO45/HPzRV9wz/lkXByMybMDdpunZTztVOhmH2WXjT4wB26R0XpT+akKlvC5FV5W5ZlR+v7jnJv3NsneWLtjK/tlE6H3GExZTYcZifOqdvYnQe71GlzRbetBy0NCZ1GpqQqbMxAPixXXL8RtHU+K31e9htDXuN5Z1VNDn3Q054Bi5JmeW+MKlAU1Sl3GIwvwLgPQDdesdGBR+akClf5EmqfKNH8dyualr0toa97Lb6PcajnZV06dwZxJqiMDd5hnJZ6hynyAk2nuVf4xluNYAavWOjghtNyFR/jZZV+XqX4lkEIH5HQzGztX6P8UjH8fM6OVt4M2Yl5OPy9EJbkiWOqJr6jsgJfwFQDLp+mPIRTcjUYIySVfkGl+JZREASdzbuI1sb9ghlHRWQ1JFdG93A8MiNzMKk6DHytLgJjnhzjOBWPJ9ZeNOr8NYjpou7qX6jCZnyl0xZVa53yq6FAmfMqu9tch5sKxOPdFTwRzsr0ePp1Tu+QRE5Adlh6ciNyFKnxo3vywhJFlyK57jAGtbxLL8B3vKXtLQeNSg0IVNDwQJgmqIqs+2y81KBNU7q9fQp5V3VKO+sslTb6lDdXYfeIN2IwjEc4kzRyA5Px9jIbNe4qBxPlBghuGTXcQNr2GRkDRsBbAMwvD9lqKBDEzIVCCyAPABTXLK7wKNKM0ROyHFKTrmqp06psdWbOl3dXKerG12uHnS6u9HlssEhO4cmGMIiSgxHrCnq1Fe0mmSJcyRYYpRoMZI3cYLRrXg6FE0tthrMG+Fdvd1segAAAtJJREFUI3wQtO4wNcRoQqb0wgDIADAJQKZLdqd6VCkNQAJH2BgDy0cAYHo9dleX26Z0uLpIm6PD2ObsNPa4vQNTlmHAEhYM8X5nGebr24TROIZVWcKqHMNpoUarlGCOlaPFCM7CmwS3KnXJqlzPgFSKvHiEJUwNgFp4V0I0gjYIpXRAEzIVzCwA4gHEnfoeL6lyolt2JwPQCCESAZEIIRJDGA8DIhHCSCxhPIQQGd6kqpz63gNvsq0BUA960Y0KQjQhUxRFBQlG7wAoiqIoL5qQKYqiggRNyJS/WACsAlAFYD+AzwEU6BkQRQ03nN4BULrh4N+VBH+B94LZKHgbcKbDu9SNoigf0Yt6I9cyALcCaIO3MeZ+AD+Adz3tLABvA3gfwF8BRJ163GIAdQDeAPAhgH+dOlYfvCPgQgC/g3dDRBa8fd7uhTf5fnbqPmWIXxdFjVh0hDwyTQVwHYAJAHgAB+BNyIC3rGb+qdvrAfz91NcdAF4E8MNzHHsavCPfE/DWbLgW3g0TB0GTMUUNCp1DHplmAlgLwAXvaHb9af/2z9NuTwfw1qnba+AdOZ/LXgDV8Cbft318DkVRPqAJ+fzjSwEJGV+/Nxh4R9Vf+vYclwbgCLyjcXbQ0VHUeYwm5JFpJ4CrAAjwzv3+4CyPKwLw41O3b8HXnY5rAUw5dftqeKc9vjQN3jljBsCNAHbAu7JiH4An4e1oDQBpAK4c1KugqPMMTcgjUzGAdQBKAHwC4DC8W4e/7afwXsgrAXAbgAdP3f9nABcCOATvtMbpo+piACsAHIV3VcW/T91/J4BYAJUASuG9MNjqp9dDUecFuspi5LLAuzrCBG+pyCXwXtwbjEIAj+DsI26KogaBrrIYuV6DdzWEAO8qisEmY4qihhgdIVMURQUJOodMURQVJGhCpiiKChI0IVMURQUJmpApiqKCBE3IFEVRQYImZIqiqCDx/yuJBZyvUkpyAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Libraries\r\n",
    "import matplotlib.pyplot as plt\r\n",
    " \r\n",
    "# Make data: I have 3 groups and 7 subgroups\r\n",
    "# 设置数据\r\n",
    "group_names=['groupA', 'groupB', 'groupC']\r\n",
    "group_size=[12,11,30]\r\n",
    "subgroup_names=['A.1', 'A.2', 'A.3', 'B.1', 'B.2', 'C.1', 'C.2', 'C.3', 'C.4', 'C.5']\r\n",
    "subgroup_size=[4,3,5,6,5,10,5,5,4,6]\r\n",
    " \r\n",
    "# Create colors\r\n",
    "# 设置颜色\r\n",
    "a, b, c=[plt.cm.Blues, plt.cm.Reds, plt.cm.Greens]\r\n",
    " \r\n",
    "# First Ring (outside)\r\n",
    "# 外圈\r\n",
    "fig, ax = plt.subplots()\r\n",
    "# 设置等比例轴，x和y轴等比例\r\n",
    "ax.axis('equal')\r\n",
    "# 画饼图\r\n",
    "mypie, _ = ax.pie(group_size, radius=1.3, labels=group_names, colors=[a(0.6), b(0.6), c(0.6)],wedgeprops=dict(width=0.3, edgecolor='white'));\r\n",
    "\r\n",
    "# Second Ring (Inside)\r\n",
    "# 画第二个圆\r\n",
    "mypie2, _ = ax.pie(subgroup_size, radius=1.3-0.3, labels=subgroup_names, labeldistance=0.7, colors=[a(0.5), a(0.4), a(0.3), b(0.5), b(0.4), c(0.6), c(0.5), c(0.4), c(0.3), c(0.2)],wedgeprops=dict(width=0.4, edgecolor='white'));\r\n",
    "\r\n",
    "plt.margins(0,0);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": false
   },
   "source": [
    "# 4 参考\n",
    "+ > [Nested pie charts](https://matplotlib.org/gallery/pie_and_polar_charts/nested_pie.html#sphx-glr-gallery-pie-and-polar-charts-nested-pie-py)\n",
    "+ > [Labeling a pie and a donut](https://matplotlib.org/gallery/pie_and_polar_charts/pie_and_donut_labels.html#sphx-glr-gallery-pie-and-polar-charts-pie-and-donut-labels-py)\n",
    "+ > [donut-plot](http://python-graph-gallery.com/donut-plot/)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "PaddlePaddle 1.8.0 (Python 3.5)",
   "language": "python",
   "name": "py35-paddle1.2.0"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
